Questions tagged [signature]
The signature tag has no usage guidance.
439
questions
0
votes
1
answer
13
views
How are we able to verify signatures using the public key?
I get that:
private key --ECDSA--> public key
private key + message --ECDSA-->signature
But then how do we verify the signature with the public key? Wouldn't we have to reverse-ECDSA the public ...
0
votes
1
answer
15
views
Integration of Gnosis safe with external contracts
Can anyone suggest how a safe created in gnosis UI be inherited with the explicit contract for multisign? I am aware of contract interactions that gnosis provides but the requirement is different. For ...
0
votes
1
answer
42
views
Potential signature malleability in Solidity CTF
I am doing a CTF so I don't want to give too much information away. I am pretty sure I can practice signature malleability or otherwise abuse the signer functions to be able to mint tokens given the ...
0
votes
1
answer
17
views
Can I execute another users transaction if I have their typedData and signature from the signedTypeData?
I have typedData from a user and their signature:
const signature = await signedTypeData(typedData.domain, typedData.types, typedData.value);
Can someone explain to me why I cannot execute their ...
1
vote
0
answers
24
views
ecrecover() gives back wrong signer
I try to verify a message signer. Everything seems to be working well (hashing values, sign message, vrs values … are correct) But when I call the ecrecover function it gives back a wrong address...
...
0
votes
2
answers
28
views
0x API: Invalid Signature
I found out how to sign an approval into Metamask,in conformity with EIP712:
const domain = [
{ name: "name", type: "string" },
{ name: "version", type: "...
0
votes
0
answers
22
views
Extracting the signature for a transaction without executing the call
I am curious if it's possible to extract a signed transaction, without executing the call completely, against a certain function in a contract? The extracted signature is then saved and fully executed ...
0
votes
1
answer
28
views
Failing to verify signature
I'm trying to verify a signature using OpenZeppelin's SignatureChecker library, but always returns false. This is the verify function from the lib:
function isValidSignatureNow(
address ...
0
votes
2
answers
15
views
How to derive method signature giving methodId and contract sourcecode?
When calling a method on a smartcontract, the first 4 bytes of input-data encompass the methodId.
For instance the methodId 0xa9059cbb (4 bytes => 8 hex characters) is the hash of the well-known ...
0
votes
1
answer
31
views
Signing a transaction without exposing the private key to the user (or anyone else)
I would like to have a system that will only sign a transaction if x condition is met. It would need to be as trustless as possible; especially not trusting the user.
Optimally, the system would be a '...
1
vote
1
answer
9
views
Why is there a requireStatement ensuring currentOwner > LastOwner in the checkNSignatures() function on GlobalSafe.sol?
I'm trying to understand why this check exists. The function CheckNSignatures() loops through the "bytes memory signatures" param in the execTransaction() function and validates each of the ...
0
votes
1
answer
46
views
New contract deployment pattern (0x60c06040)?
I've been monitoring new contract deployments simply by looking for leading 0x60806040 pattern in a transaction's data field (example).
However, I've noticed there is a similar pattern that is less ...
1
vote
1
answer
25
views
How do the public key recovery methods like secp256k1.RecoverPubkey(msg, sig) recover public key from a transaction signature
For a signature done using a private key, we know that the corresponding public key is needed to verify. When the address is a one way hash function of the public key (which means from the address, it ...
0
votes
0
answers
24
views
Problem with eth.sendRawTransaction in geth console
Im trying to use the following code with nodejs to create a raw transaction:
const ethTx = require('ethereumjs-tx').Transaction;
const txParams = {
nonce: '0x0',
gasPrice: '0x3B9ACA00',
...
0
votes
0
answers
24
views
Requesting code review for simple EIP712 validation scheme
Hello,
I am working on a simple EIP712 whitelist member wallet registration/validation scheme. The nutshell goes (sign typed data -> pass to chain -> extract signing address -> compare to ...
0
votes
0
answers
22
views
Using Solidity, how do you verify an ECDSA signature created on an external and sovereign blockchain?
I need to verify a signature on Ethereum using Solidity only. The verification needs to happen using ECDSA with the curve being secp256k1.
The verification is not for Ethereum or an Ethereum generated ...
0
votes
1
answer
30
views
Why would you use a signed message to verify the sender?
In the Ghost contract they have:
function mint(uint8 quantity, bytes calldata signature)
public
payable
callerIsUser
{
require(DA_ACTIVE == true, "DA isnt ...
0
votes
0
answers
35
views
Verifying a message in python signed with Coinbase Wallet doesn't work, but using Brave Wallet works
I'm trying to verify that a message was signed by a certain address using different wallets. The signature is completed using a Vue app and the verification will happen in Python. My code works with ...
0
votes
0
answers
17
views
what's the replacement HDWalletProvider in client-browser?
so this provider: new HDWalletProvider(privateKey, config.child.rpc)
cannot be used in client browser because I need to replace that with a signature provider, I haven't success.
for init contract I ...
0
votes
1
answer
11
views
Library for a local encrypted wallet
Is there any wallet/library that restricts access to a private key through encryption, but also allows certain actions to be performed by default, such as signing messages?
I would like to have code ...
0
votes
1
answer
47
views
ecrecover returns wrong address if toSignString consists of only number
//web3 code
let hash = web3.utils.soliditySha3("String"); //if replace "String" with "0" "123" etc , ecrecover returns wrong address
console.log(&...
0
votes
0
answers
46
views
Any way to catch a signature request to a web3 wallet?
Is there any way to catch/intercept a signature request to a web3 wallet? Are there any events fired?
Do not care about which contract the call is for, just need to know if there are ANY requests to a ...
0
votes
0
answers
32
views
Any security issues with allowing a DApp access to "signing keys"?
Want to use mirror.xyz, but the DApp does not let you do anything without singing the following message in your wallet:
I authorize publishing on mirror.xyz from this device using: {"crv":&...
0
votes
0
answers
10
views
How to sign contract-deployment transaction to deploy later from MetaMask [duplicate]
I'm trying to sign a contract-deployment transaction from MetaMask to get the signature and deploy it later by sending a raw transaction to the network.
I created a rawTx:
const Tx = require('...
0
votes
0
answers
21
views
Does permit function need a cron job? Also how to securely transfer signature?
I was reading into ERC20 permit function (EIP2612). The main thing I dont quite get is that when we do a permit function and approve on behalf of the owner, do we need to do a cron job to regulary ...
0
votes
0
answers
63
views
How to properly sign an Ethereum transaction?
I'm learning Ethereum on GOlang. I work through Ganache GUI. I'm trying to make a transfer from 1 wallet to another, but I get an error at the stage of sending a transaction through the client. I ...
0
votes
0
answers
15
views
Is it possible to sign typed data as operator
I am letting people create NFT vouchers with them by signing a typed data (_signTypedData). This is allowing me to lazily mint NFTs until someone actually mints the NFT by using this voucher. I wonder ...
1
vote
0
answers
37
views
Using an external contract, how can you make it call a function on a target contract that requires a signature?
I'm trying to create a contract that calls the following mintNFT function but one of the parameters it needs is a signature:
function mintNFT(uint256 _numOfTokens, bytes memory _signature) public ...
0
votes
0
answers
73
views
Recover address from signature works only with MetaMask
I try to implement Web3 login to my page. It works with MetaMask, but with other wallets (like LRC, Coinbase or Argent) it doesn't - recovered address differs from the original one.
Ethereum\EcRecover ...
0
votes
0
answers
41
views
i am trying to sign a voucher with _signTypedData for the purpose of lazy minting.but my code is not working .need help?
this is my JS code plz have a look
import { useState, useRef } from "react";
import { ethers } from "ethers";
import ErrorMessage from "./ErrorMessage";
// These ...
0
votes
1
answer
35
views
Is it okay to relay on the web3.eth.sign to always be deterministic?
I am using web3.eth.sign(message, address); to generate digital signatures signed by the users private key. Currently the digital signature returned is deterministic given the same message and account....
0
votes
0
answers
30
views
Does OpenZeppelin's ECDSA.sol work on Binance Smart Chain?
It requires 'v' value to be 27 or 28, can someone explain how the compatibility work or point out to some source?
2
votes
3
answers
74
views
How make signature that expires after some time
I am working on something where i need to create a signature that will expire after some time.
0
votes
1
answer
12
views
Allow Transaction Signature only to wallets with eth
I want to allow only addresses with eth above certain limit [Ex. 1ETH] to sign transactions.
0
votes
0
answers
60
views
How to obtain v,r,s in ethereum using solidity in remix. I am using a nft contract that specifically needs me to enter the vrs to mint NFT's
[![How should I pass value for the V,R,S for the sign parameter. I know I have to pass an array something like this ["0x26",
"...
0
votes
1
answer
915
views
How to recover an ethers.js signed message in go-ethereum?
I generated a signed message using ethers.js. Here's how I did that:
const provider = new ethers.providers.Web3Provider(web3Provider.provider);
const signer = provider.getSigner();
await signer....
0
votes
1
answer
42
views
Register users only through DApp sign-up
I am making a DApp where users need to be registered in the Solidity smart contract to perform some actions, for example:
function publish (string memory _itemURI) userOnly public {
// Publish ...
0
votes
0
answers
156
views
Is it possible to decrypt a signed message given public or private key and message's signature?
a smart contract's function requires a certificate input that should be created using a signed message by the relevant wallet which will call that function.
Is it possible to decrypt that signed ...
2
votes
0
answers
252
views
encode SignTypedDataV4 using encode_structured_data in python
TL;DR
I am trying to use web3.py and eth_account to encode and sign a EIP-712 message with arrays and I am running into an error:
KeyError: 'address'
So, how can I encode this message?
Context:
...
5
votes
2
answers
2k
views
How to use ethers keccak256?
I tried to use ethers' keccak256 function like this:
import { keccak256 } from "@ethersproject/keccak256";
const signature = keccak256("balanceOf(address)");
But the script ...
3
votes
1
answer
609
views
Signing messages as a Gnosis Safe (eip1271 support)
Does Gnosis Safe have a native way to validate it's own eip1271 signatures? I know that Gnosis Safe's can have contract accounts as owners and it will verify those signatures according to eip1271 but ...
2
votes
0
answers
41
views
Is it possible to sign a transaction using eth_sign?
I am trying to sign a transaction, but not submit it. That would be possible using eth_signTransaction, but Metamask doesn't support it yet. I heard that it would be possible to sign a transaction ...
0
votes
0
answers
25
views
How to identify modifiers in bytecode?
To identify a function from bytecode I do something like this:
>>> Web3.keccak(text="transfer(address,uint256)")[0:4].hex() # function name
0xa9059cbb
And I will find a9059cbb in ...
0
votes
1
answer
194
views
How does eth_sendTransaction method of ETH JSON-RPC API work?
As I understand, this method sends a transaction to the network. But in order for nodes to verify this transaction, the transaction needs to be signed right?
No where in the parameters of this method ...
0
votes
2
answers
111
views
How do you make a signature valid for only one transaction?
I asked this question before but I worded it ambiguosly.
I have a function in a smartcontract that should only be accessible by users who have a signature, issued by the contract owner. The goal is, ...
0
votes
0
answers
13
views
Would it be a acceptable to sign a transaction and send it to the network at a later time?
I've noticed that gas fees change a lot and because my transactions are not time-sensitive I would prefer to pre-sign them and have a script send them to the network when the gas fees are lowest. ...
0
votes
1
answer
33
views
Verifying the signature of a transaction seems circular
I'm reading Mastering Ethereum. Around page 116 it says;
"to verify the signature one must have the signature (r and s), the serialized transaction, and the public key that corresponds to the ...
0
votes
0
answers
81
views
Is it safe to sign messages with Personal Sign or can you hide a transaction in the message?
I am wondering if it is safe to sign any message with Personal Sign? Can't a malicious dapp try to hide a transaction inside the message I am signing and then use my signature to make that transaction?...
0
votes
1
answer
52
views
what is the point of the chainId parameter in ethereumjs's ecrecover method?
The parameters for ecrecover() are:
msgHash
v
r
s
chainId
The first four are pretty straight forward to me but the last one - chainId.... what's the point of that one?
In looking at the source code ...
0
votes
2
answers
44
views
Is it possible to sign an Ethereum transaction when you only have the account address?
I need to sign & verify an message on Ethereum, but my problem is that I only have my account address. When I try to use for instance MyCrypto it requires another type of wallet. I have tried ...