I am trying to understand what happens under the hood when we call window.solana.signMessage.
What is the algorithm Phantom Wallet (Solana) uses to sign messages?
1.5k Views Asked by Dheeraj Pb At
1
There are 1 best solutions below
Related Questions in CRYPTOGRAPHY
- Do I have to randomize key in OpenSSL
- An exception of type 'System.Security.Cryptography.CryptographicException': keyset does not exist
- crypto.BadPaddingException: data hash wrong (EKYC-Response)
- Decrypted string returns "Length of the data to decrypt is invalid"
- Generate signature using private key with OpenSSL API
- Recovering an ECPublicKey from Java to JavaCard
- Proxy tool for CoAP integrated with DTLS
- Using CmsEnvelopedData with CmsSignedData to verify signed data
- Unchecked returned value causing unexpected states and conditions
- SQL-Server Verify SHA2_512 hash procedure
- SagePay Protocol 3.00 Encryption Error with ASP.NET
- Encrypting with PHP; decrypting with CryptoJS
- How can I write a function to recreate the original text obscured here by css magic?
- What encoding does [BouncyCastle] PKCS10CertificationRequest.getEncoded() return?
- Is integer comparison in Python constant time?
Related Questions in SIGNING
- Migrate ClickOnce certificate from Sha1 to SHA256 and run on .NET 4.0 client machines
- is PdfPKCS7.loadCacertsKeyStore() deprecated
- signtool fail with Inno Setup with exit code 0x1
- How does driver signing work when Windows is offline?
- What part (or whole) of the keystore do I need from an external developer who developed our V1.0 Android app
- How do I call an AWS_IAM authorized API Gateway endpoint from AWS Lambda who's execution role has permission to do so?
- Xcode 8 signing errors, can't log in with account and no provisioning profile
- Compiling Android app in Eclipse - "keystore was tampered with, or password was incorrect"
- Signing and decoding with RSA-SHA in GO
- What purpose for using randomly generated KeyPair to do sha256WithRSA signing?
- xcode project on GitHub, remove signing and identity?
- Restricting FCM topic subscription based on APK signing
- Windows7 boot option to allow unsigned drivers ignored
- "*Certificate not found* (from client)" when calling Web Service that requires signing
- Customize PDFStamper using iTextSharp
Related Questions in SOLANA
- Issue with import solana/web3.js package
- Transaction failing while calling a Solana program with PDA
- I am having ParsedProgramError whlie mint programmable NFT
- Is it possible to deploy program with Solana SDK
- Solana Private key with 87 characters
- Error: failed to send transaction: failed to deserialize solana_sdk:transaction::versioned:VersionedTransaction:io error: failed to fill whole buffer
- solana "Program log: Instruction: GetAccountDataSize", "Program log: Error: IncorrectProgramId", "Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA
- Error occured: CredentialsSignin when trying to log in using Phantom provider
- Does program keypair has any other usage besides program deployment?
- How can I receive WSOL on Solana devnet?
- web3 auth integration to Login page
- Can I set solana account field to private?
- unspendable assets (USDT) on Solana sent from Kucoin
- How can I sign a Solana transaction on the frontend with data coming from the backend?
- Is it possible to check the Solana program `macro` correctness before deployment?
Related Questions in PHANTOM-WALLET
- Solana Private key with 87 characters
- About solana web3 minting Token with phantom wallet
- How to specify Metaplex NFT collection image in Phantom wallet
- What is the algorithm Phantom Wallet (Solana) uses to sign messages?
- Debugging "Transaction simulation failed" when sending program instruction (Solana Solidity)
- Phantom wallet: Solana transactions debug
- Uncaught (in promise) ReferenceError: Buffer is not defined. Using Phantom Wallet, Solana and React to make a transaction
- how to verify the signature of a message in phantom solana?
- Solana - How to get the balance from my Phantom wallet?
- What standards does Phantom Wallet use for mnemonic to keypair generation?
- Phantom wallet Integration with React Native
- Uncaught (in promise) Error: Transaction fee payer required
- Signature verification failed When transferring spl-token to user connected phantom wallet
- How to transfer NFT spl-token using phantom wallet and solana web3js
- How to connect Phantom wallet to a Flutter app using deep links?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Solana uses the ed25519 curve for its cyrptography, so a transaction signature is:
The actual code called is
tweetnacl'ssign.detachedfunction.More information at the official docs: https://docs.solana.com/terminology#signature
The Solana transaction sign code: https://github.com/solana-labs/solana/blob/2a5764ef79cff391da080cc19617f171109c4158/web3.js/src/transaction.ts#L522
The underlying tweetnacl code: https://github.com/dchest/tweetnacl-js/blob/971d653d301cff2dd694e95a099cb42d9201e922/nacl.js#L1076