Bitcoin Forum
June 19, 2024, 02:36:45 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: A simple Bitcoin message signing format.  (Read 6077 times)
🏰 TradeFortress 🏰 (OP)
Bitcoin Veteran
VIP
Legendary
*
Offline Offline

Activity: 1316
Merit: 1043

👻


View Profile
June 24, 2013, 07:07:28 AM
 #1

The problem with the current message signing is that you don't know when the signed message begins or when it ends, and you might need to try a few times to sort through all the different whitespace. You'll also need to paste multiple things. I propose a new standard clearsign format:

-----BEGIN BITCOIN SIGNED MESSAGE-----
[message, beginning and end whitespace / newlines ignored]
-----BEGIN SIGNATURE-----
[bitcoin address]
[message signature]
-----END BITCOIN SIGNED MESSAGE-----

There. Clients may append a timestamp to the message. The message is the part that is signed and verified.
🏰 TradeFortress 🏰 (OP)
Bitcoin Veteran
VIP
Legendary
*
Offline Offline

Activity: 1316
Merit: 1043

👻


View Profile
June 25, 2013, 07:48:41 AM
 #2

-----BEGIN BITCOIN SIGNED MESSAGE-----
Signed by Inputs.io on 25/06/13 07:50:30

This is a signed message generated by Inputs.io

-----BEGIN SIGNATURE-----
1MDeZptpVfaNemwoSpeeph2P1UgHuQM62m
IIW/rq62ip/MtTSZbCZSdoQSkJKeWPyp6yJ1MxQFhzfmMlnSib1QUsYt8FOMYw9zzr4BnLfPM/0bIlPVDiKVE6U=
-----END BITCOIN SIGNED MESSAGE-----
Astrohacker
Full Member
***
Offline Offline

Activity: 156
Merit: 102



View Profile WWW
June 25, 2013, 02:23:00 PM
 #3

Looks good to me, except the bitcoin signature is 88 chars long, which is longer than the 80 chars that is standard. The simplest thing to do is let the signature wrap with a limit of 80 chars per line. Then just remove the whitespace when reconstructing the signature. In other words, here's your signature:

-----BEGIN BITCOIN SIGNED MESSAGE-----
Signed by Inputs.io on 25/06/13 07:50:30

This is a signed message generated by Inputs.io

-----BEGIN SIGNATURE-----
1MDeZptpVfaNemwoSpeeph2P1UgHuQM62m
IIW/rq62ip/MtTSZbCZSdoQSkJKeWPyp6yJ1MxQFhzfmMlnSib1QUsYt8FOMYw9zzr4BnLfPM/0bIlPV
DiKVE6U=
-----END BITCOIN SIGNED MESSAGE-----
Astrohacker
Full Member
***
Offline Offline

Activity: 156
Merit: 102



View Profile WWW
June 25, 2013, 02:25:19 PM
 #4

Then again, it's not like it matters if a line is longer than 80 chars, and letting the line extend past 80 chars makes it easier to verify the signature manually.
jackjack
Legendary
*
Offline Offline

Activity: 1176
Merit: 1255


May Bitcoin be touched by his Noodly Appendage


View Profile
June 26, 2013, 11:06:30 AM
 #5


-----BEGIN BITCOIN SIGNED MESSAGE-----
[message, beginning and end whitespace / newlines ignored]
-----BEGIN SIGNATURE-----

So you want to use a different way of formatting than RFC2440?

Own address: 19QkqAza7BHFTuoz9N8UQkryP4E9jHo4N3 - Pywallet support: 1AQDfx22pKGgXnUZFL1e4UKos3QqvRzNh5 - Bitcointalk++ script support: 1Pxeccscj1ygseTdSV1qUqQCanp2B2NMM2
Pywallet: instructions. Encrypted wallet support, export/import keys/addresses, backup wallets, export/import CSV data from/into wallet, merge wallets, delete/import addresses and transactions, recover altcoins sent to bitcoin addresses, sign/verify messages and files with Bitcoin addresses, recover deleted wallets, etc.
🏰 TradeFortress 🏰 (OP)
Bitcoin Veteran
VIP
Legendary
*
Offline Offline

Activity: 1316
Merit: 1043

👻


View Profile
June 29, 2013, 01:08:27 AM
 #6


-----BEGIN BITCOIN SIGNED MESSAGE-----
[message, beginning and end whitespace / newlines ignored]
-----BEGIN SIGNATURE-----

So you want to use a different way of formatting than RFC2440?

(i) This isn't PGP
(ii) This reduces errors
(iii) This isn't PGP
Jaxkr
Sr. Member
****
Offline Offline

Activity: 420
Merit: 250


View Profile
June 29, 2013, 02:58:20 AM
 #7

I like this format. It's nice and clean.

Signature: 1JaxkrMxYZQiqtKExdwB1NAAE98mQ4RRVt, HDTel+fouy0KILgU6PGUuF1fJ4c9c7JItSR/KZvtm0WKnIw4HiC7JidJY7ITjQo4ohy9jsoCcSWDr/72Oevp30U=

The format would be message with whitespace, then a blank line, then "Signature: ", followed by the address used for signing, followed by a comma and a space, then finally the signature.
jackjack
Legendary
*
Offline Offline

Activity: 1176
Merit: 1255


May Bitcoin be touched by his Noodly Appendage


View Profile
June 29, 2013, 09:32:38 AM
 #8


-----BEGIN BITCOIN SIGNED MESSAGE-----
[message, beginning and end whitespace / newlines ignored]
-----BEGIN SIGNATURE-----

So you want to use a different way of formatting than RFC2440?

(i) This isn't PGP
(ii) This reduces errors
(iii) This isn't PGP


Anyway that's not my point, you copy the '-----BEGIN SIGNATURE-----' syntax so that's strange not to use the message syntax too
If this is not PGP and can't even bear to hear about it when you propose such a thing then use another syntax like '^^^^BEGIN BITCOIN SIGNATURE^^^^'

Also, etotheipi will soon implement a signing format in Armory and will talk about it to the bitcoin devs
Do you want to make another format?


(ii) Yeah, people made on purpose the RFC2440 because it creates more errors

Own address: 19QkqAza7BHFTuoz9N8UQkryP4E9jHo4N3 - Pywallet support: 1AQDfx22pKGgXnUZFL1e4UKos3QqvRzNh5 - Bitcointalk++ script support: 1Pxeccscj1ygseTdSV1qUqQCanp2B2NMM2
Pywallet: instructions. Encrypted wallet support, export/import keys/addresses, backup wallets, export/import CSV data from/into wallet, merge wallets, delete/import addresses and transactions, recover altcoins sent to bitcoin addresses, sign/verify messages and files with Bitcoin addresses, recover deleted wallets, etc.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!