View Issue Details

IDProjectCategoryView StatusLast Update
0007232Talermerchant backoffice SPApublic2022-08-02 17:00
Reportersebasjm Assigned Tosebasjm  
PrioritylowSeveritytweakReproducibilityalways
Status resolvedResolutionfixed 
Product Versiongit (master) 
Target Versiongit (master) 
Summary0007232: payto field should check bitcoin/ethereum addr checksum
Descriptionbefore the user submit the payto-URI in the bank account field in the new-instance form/ edit-instance form.

right know there is a basic validation:
 bitcoin: ^(bc1|[13])[a-zA-HJ-NP-Z0-9]{25,39}$
 eth: ^(0x)?[0-9a-f]{40}$
TagsNo tags attached.

Activities

sebasjm

2022-07-17 16:34

developer   ~0018956

bitcoin is implemented, ethereum is still missing

Christian Grothoff

2022-07-17 16:34

manager   ~0018957

https://github.com/PaulRBerg/ethsum

sebasjm

2022-08-02 17:00

developer   ~0018982

as pointed out here [1] checksum may also depend on `eip1191ChainId` and without this value we may create false positives.

so I will leave the checksum check with the current implementation (valid HEX value of 40 chars)

https://github.com/ethereumjs/ethereumjs-monorepo/blob/master/packages/util/src/account.ts#L138

copy of the comment:

 * Returns a checksummed address.
 *
 * If an eip1191ChainId is provided, the chainId will be included in the checksum calculation. This
 * has the effect of checksummed addresses for one chain having invalid checksums for others.
 * For more details see [EIP-1191](https://eips.ethereum.org/EIPS/eip-1191).
 *
 * WARNING: Checksums with and without the chainId will differ and the EIP-1191 checksum is not
 * backwards compatible to the original widely adopted checksum format standard introduced in
 * [EIP-55](https://eips.ethereum.org/EIPS/eip-55), so this will break in existing applications.
 * Usage of this EIP is therefore discouraged unless you have a very targeted use case.

Issue History

Date Modified Username Field Change
2022-04-20 00:03 sebasjm New Issue
2022-04-20 00:03 sebasjm Status new => assigned
2022-04-20 00:03 sebasjm Assigned To => sebasjm
2022-04-21 13:30 Christian Grothoff Priority normal => low
2022-04-21 13:30 Christian Grothoff Severity feature => tweak
2022-07-17 16:34 sebasjm Note Added: 0018956
2022-07-17 16:34 Christian Grothoff Note Added: 0018957
2022-08-02 17:00 sebasjm Note Added: 0018982
2022-08-02 17:00 sebasjm Status assigned => resolved
2022-08-02 17:00 sebasjm Resolution open => fixed