stlpisign
HTML
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/stellar-sdk.min.js"></script>
ad
JavaScript
//import * as StellarSdk from "https://cdn.jsdelivr.net/npm/[email protected]/dist/stellar-sdk.min.js";
const signature = "B7FzJHXT73YP6MnkrY7smPxokkcykOAY13x0v9AN/xNQD8NGFO3MEtvJXQu9Nu+EsrVC12U92WN3h5lRiztdBQ==";
const data = ""; // Your data to be signed
const potentialPublicKeys = ["GBEXAMPLE...", "GBANOTHER..."]; // Replace with your potential public keys
//console.log(StellarSdk);
//const {KeyPair} = StellarSdk.KeyPair; //.random();
// const keypair = StellarSdk.KeyPair.fromRawEd25519Seed(publicKey);
try {
const publicKey = getPublicKeyFromSignature(signature, data);
console.log("Extracted Public Key:", publicKey);
} catch (error) {
console.error("Error:", error.message);
}
function getPublicKeyFromSignature(signature, data) {
for (const publicKey of potentialPublicKeys) {
//const keypair = StellarSdk.KeyPair.fromPublicKey(publicKey);
const keypair = StellarSdk.KeyPair.fromRawEd25519Seed(publicKey);
if (keypair.verify(data, signature)) {
return publicKey;
}
}
throw new Error("Couldn't find public key for the signature");
}