Author

Topic: Different format for blk*.dat (Read 2442 times)

kjj
legendary
Activity: 1302
Merit: 1026
August 30, 2011, 09:26:26 AM
#18
The short version is that a transaction output is created by signing part of the transaction with the hash of a public key (from the address).  The transaction signature is random, meaning that it can be anything.  Usually, it just looks like garbage, but it could, by random chance, turn out to be an ASCII text string.  So, the block must store arbitrary bit strings, because literally any sequence of bits is potentially valid.

So, if you want to embed text into the block chain, all you need to do is keep creating keys and transactions until you find one that just by chance has a signature that just happens to be the ASCII text you want.

Or, you can do it in the other order: just put your text in as the signature, and then go looking for the key so that you can redeem it later.
legendary
Activity: 1050
Merit: 1000
You are WRONG!
August 30, 2011, 09:07:46 AM
#17
Why does the blockchain format accommodate arbitrary text anyway? Who's idea was that? Mr Nakamoto.

If there's currently space for random text, couldn't the blockchain just be smaller instead?

It would be very difficult to prevent arbitrary text since it needs to store arbitrary data. A standard address is just a sequence of 20 bytes. What is stopping anyone from making those bytes an ASCII string?

Sorry, can you help me learn why "it needs to store arbitrary data"?

Why was the space made available when the format was created?

Was it to store 20-byte addresses?

Are they 'to' or 'from' addresses, or something else?

Where exactly can I read the technical details of why things were designed this way?

Thanks!

https://en.bitcoin.it/wiki/Protocol_specification

see the transaction structures.
and also the scripting.
sr. member
Activity: 266
Merit: 250
August 30, 2011, 06:14:41 AM
#16
Why does the blockchain format accommodate arbitrary text anyway? Who's idea was that? Mr Nakamoto.

If there's currently space for random text, couldn't the blockchain just be smaller instead?

It would be very difficult to prevent arbitrary text since it needs to store arbitrary data. A standard address is just a sequence of 20 bytes. What is stopping anyone from making those bytes an ASCII string?

Sorry, can you help me learn why "it needs to store arbitrary data"?

Why was the space made available when the format was created?

Was it to store 20-byte addresses?

Are they 'to' or 'from' addresses, or something else?

Where exactly can I read the technical details of why things were designed this way?

Thanks!
legendary
Activity: 1176
Merit: 1280
May Bitcoin be touched by his Noodly Appendage
August 29, 2011, 01:45:08 PM
#15
if you don't like luke-jr putting stuff in the blockchain:
sent coins to 17yH22jVieEWq2voErEtwuajx5bq9djfpa

it *should* show up as "Luke-Jr Sucks       " in the blockchain
Enjoy: http://bitcoin.site50.net/blockchain.php?msg=Luke-Jr Sucks
legendary
Activity: 910
Merit: 1001
Revolutionizing Brokerage of Personal Data
August 29, 2011, 12:42:51 PM
#14
How would we restrict the tools? As long as Bitcoin is open-source, the blockchain storage format is openly available. As far as I see it, it would be wrong to try to block or outlaw tools for parsing the blockchain. People should be able to freely analyze its contents.
Yes I agree and I'm not in favor of restricting any tools, but by requiring tools not readily pre-installed on millions of computers you raise the bar for anyone wanting to trash the public's opinion of Bitcoin.

If you distribute encrypted copies of illegal content, the recipients are far less likely to get into troubles if they don't possess the key. The "key" in this context would be the tool that analyzes the blockchain.

/usr/bin/strings from binutils hardly qualifies as a "key" because everybody already has it.

Quote
If we have a problem with content in the blockchain, we need to either find a way to deal with it or learn to accept it. Hiding it won't make it go away.
True - I'm just arguing that changing the blockchain format is easy compared to Gavin et al. or bitcoin.org having to fend off the next DMCA takedown notice. By making the blockchain less attractive to distribute arbitrary data we can probably reduce that risk.
legendary
Activity: 1176
Merit: 1280
May Bitcoin be touched by his Noodly Appendage
August 29, 2011, 12:38:28 PM
#13
if you don't like luke-jr putting stuff in the blockchain:
sent coins to 17yH22jVieEWq2voErEtwuajx5bq9djfpa

it *should* show up as "Luke-Jr Sucks       " in the blockchain
Did you add \x0a before 'L'?
legendary
Activity: 1050
Merit: 1000
You are WRONG!
August 29, 2011, 12:21:12 PM
#12
if you don't like luke-jr putting stuff in the blockchain:
sent coins to 17yH22jVieEWq2voErEtwuajx5bq9djfpa

it *should* show up as "Luke-Jr Sucks       " in the blockchain
full member
Activity: 134
Merit: 102
August 29, 2011, 12:03:43 PM
#11
Why does the blockchain format accommodate arbitrary text anyway? Who's idea was that? Mr Nakamoto.

If there's currently space for random text, couldn't the blockchain just be smaller instead?

It would be very difficult to prevent arbitrary text since it needs to store arbitrary data. A standard address is just a sequence of 20 bytes. What is stopping anyone from making those bytes an ASCII string?

As soon as you need additional tools to unlock the content, these tools themselves become problematic and can be blocked/outlawed much more easily and with less harm to Bitcoin itself.

How would we restrict the tools? As long as Bitcoin is open-source, the blockchain storage format is openly available. As far as I see it, it would be wrong to try to block or outlaw tools for parsing the blockchain. People should be able to freely analyze its contents.

If we have a problem with content in the blockchain, we need to either find a way to deal with it or learn to accept it. Hiding it won't make it go away.
kjj
legendary
Activity: 1302
Merit: 1026
August 29, 2011, 09:46:55 AM
#10
Offending/illegal content?  We are still talking about text, right?
Illegal texts:

09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
F1 90 A1 E8 17 8D 80 64 34 94 39 4F 80 31 D9 C8
7A 5F 8A 09 F8 33 F7 22 1B D4 1F A6 4C 9C 79 33
C8 72 94 CE 84 F9 CC EB 59 84 B5 47 EE C1 8D 66
45 2F 6E 40 3C DF 10 71 4E 41 DF AA 25 7D 31 3F

Meh, I have that on a shirt, and probably dozens or hundreds of copies scattered around my hard drive.  What's one more in the blockchain?
legendary
Activity: 1176
Merit: 1280
May Bitcoin be touched by his Noodly Appendage
August 29, 2011, 09:17:08 AM
#9
If people care enough to read the messages, they will use an old client or parse the new format.
Sure, but if you only need a few keystrokes to make possibly offending/illegal content readable on any (*nix) Bitcoin system without having to download any special program this might become a problem for Bitcoin and justify obfuscating blk*.dat.

As soon as you need additional tools to unlock the content, these tools themselves become problematic and can be blocked/outlawed much more easily and with less harm to Bitcoin itself.

Why take the chance?

Offending/illegal content?  We are still talking about text, right?
Illegal texts:
Code:
09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
Code:
45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
Code:
F1 90 A1 E8 17 8D 80 64 34 94 39 4F 80 31 D9 C8
Code:
7A 5F 8A 09 F8 33 F7 22 1B D4 1F A6 4C 9C 79 33
Code:
C8 72 94 CE 84 F9 CC EB 59 84 B5 47 EE C1 8D 66
Code:
45 2F 6E 40 3C DF 10 71 4E 41 DF AA 25 7D 31 3F
sr. member
Activity: 266
Merit: 250
August 29, 2011, 09:16:13 AM
#8
Why does the blockchain format accommodate arbitrary text anyway? Who's idea was that? Mr Nakamoto.

If there's currently space for random text, couldn't the blockchain just be smaller instead?
legendary
Activity: 910
Merit: 1001
Revolutionizing Brokerage of Personal Data
August 29, 2011, 09:13:15 AM
#7
Offending/illegal content?  We are still talking about text, right?
Sure, but even text can be both.

Of course, this is just one aspect of the "problematic content in the blockchain" debate and maybe we can afford to wait with a solution until it really becomes a problem but on the other hand it doesn't feel good to see that the blockchain is already abused for expressing strongly religious views Sad
kjj
legendary
Activity: 1302
Merit: 1026
August 29, 2011, 08:11:13 AM
#6
If people care enough to read the messages, they will use an old client or parse the new format.
Sure, but if you only need a few keystrokes to make possibly offending/illegal content readable on any (*nix) Bitcoin system without having to download any special program this might become a problem for Bitcoin and justify obfuscating blk*.dat.

As soon as you need additional tools to unlock the content, these tools themselves become problematic and can be blocked/outlawed much more easily and with less harm to Bitcoin itself.

Why take the chance?

Offending/illegal content?  We are still talking about text, right?
legendary
Activity: 910
Merit: 1001
Revolutionizing Brokerage of Personal Data
August 29, 2011, 05:36:34 AM
#5
If people care enough to read the messages, they will use an old client or parse the new format.
Sure, but if you only need a few keystrokes to make possibly offending/illegal content readable on any (*nix) Bitcoin system without having to download any special program this might become a problem for Bitcoin and justify obfuscating blk*.dat.

As soon as you need additional tools to unlock the content, these tools themselves become problematic and can be blocked/outlawed much more easily and with less harm to Bitcoin itself.

Why take the chance?
full member
Activity: 134
Merit: 102
August 28, 2011, 12:35:51 PM
#4
I see no reason to change the storage format over this. It might obfuscate transaction messages in the blockchain, but they will still be there. If people care enough to read the messages, they will use an old client or parse the new format.
legendary
Activity: 1176
Merit: 1280
May Bitcoin be touched by his Noodly Appendage
August 28, 2011, 11:04:32 AM
#3
These transactions are never spent because nobody can spend them
They send coins to a given pubkey, of which nobody has the privkey

Nice idea though if we want to reduce the size of the blk files
legendary
Activity: 1050
Merit: 1000
You are WRONG!
August 28, 2011, 10:52:43 AM
#2
solution:
start deleting spend transactions. and keep only the headers

you could of course still put strings in the block chain, by not spending. but...
legendary
Activity: 1176
Merit: 1280
May Bitcoin be touched by his Noodly Appendage
August 28, 2011, 10:10:14 AM
#1
As you surely know, Luke-Jr thinks it's intelligent to put prayers in the block chain...
Because of him we now have that with a simple "strings -n 20 blk0001.dat":
Code:
Eligius/Benedictus Deus. Benedictum Nomen Sanctum eius.
Eligius/Benedictus Deus. Benedictum Nomen Sanctum eius.
***************************************************
Benedictus Iesus Christus, verus Deus et verus homo.
Benedictum Nomen Iesu.
   I LIKE TURTLES  
Benedictum Cor eius sacratissimum.
Benedictus Sanguis eius pretiosissimus.
Benedictus Iesus in sanctissimo altaris Sacramento.
Benedictus Sanctus Spiritus, Paraclitus.
C-C-C-COMBO BREAKER
Eligius/Benedictus Deus. Benedictum Nomen Sanctum eius.
Eligius/Benedictus Deus. Benedictum Nomen Sanctum eius.
***************************************************
Benedictus Iesus Christus, verus Deus et verus homo.
Benedictum Nomen Iesu.
   I LIKE TURTLES  
Benedictum Cor eius sacratissimum.
Benedictus Sanguis eius pretiosissimus.
Benedictus Iesus in sanctissimo altaris Sacramento.
Benedictus Sanctus Spiritus, Paraclitus.
C-C-C-COMBO BREAKER
Benedictus Sanctus Spiritus, Paraclitus.
Benedicta excelsa Mater Dei, Maria sanctissima.
Benedicta sancta eius et immaculata Conceptio.
Benedicta sancta eius et immaculata Conceptio.
Benedicta eius gloriosa Assumptio.
Benedictum nomen Mariae, Virginis et Matris.
Benedictum nomen Mariae, Virginis et Matris.
Benedictus sanctus Ioseph, eius castissimus Sponsus.
Benedictus Deus in Angelis suis, et in Sanctis suis. Amen.
In nomine Patris et Filii et Spiritus Sancti. Amen.
O my God, I am heartily sorry for having offended Thee and I detest all my sins...
O my God, I am heartily sorry for having offended Thee and I detest all my sins...
Eye'm the strongest!
...because of Thy just punishments, but most of all because they offend Thee, ...
...my God, who art all good and deserving of all my love.
I firmly resolve, with the help of Thy grace, to sin no more...
I firmly resolve, with the help of Thy grace, to sin no more...
...and avoid the near occasions of sin. Amen.
O my God! I firmly believe that Thou art one God in three Divine persons, ...
O my God! I firmly believe that Thou art one God in three Divine persons, ...
...Father, Son, and Holy Ghost; I believe that Thy Divine Son became man, ...
...and died for our sins, and that he will come to, judge the living and the dead.
I believe these and all the truths which the Holy Catholic Church teaches, ...
...because Thou hast revealed them, who canst neither deceive nor be deceived.
O my God! relying on Thy infinite goodness and promises, ...
...I hope to obtain pardon of my sins, the help of Thy grace, ...
...and life everlasting, through the merits of Jesus Christ, my Lord and Redeemer.
...and life everlasting, through the merits of Jesus Christ, my Lord and Redeemer.
O my God! I love Thee above all things, with my whole heart and soul, ...
...because Thou art all-good and worthy of all love.
...because Thou art all-good and worthy of all love.
Yukkuri Shiteitte ne
I love my neighbor as myself for the love of Thee.
I forgive all who have injured me, and ask pardon of all whom I have injured.
I forgive all who have injured me, and ask pardon of all whom I have injured.
I forgive all who have injured me, and ask pardon of all whom I have injured.
O my Jesus, forgive us our sins, save us from the fires of Hell, ...
...lead all souls to Heaven, especially those in most need of Thy mercy.
I confess to Almighty God, to blessed Mary ever Virgin, ...
... to blessed Michael the Archangel, to blessed John the Baptist, ...
... to the holy Apostles Peter and Paul, and to all the Saints, ...
... that I have sinned exceedingly, in thought, word, and deed, ...
... through my fault, through my fault, through my most grievous fault.
Therefore I beseech blessed Mary ever Virgin, blessed Michael the Archangel, ...
... blessed John the Baptist, the holy Apostles Peter and Paul, ...
... and all the Saints to pray to the Lord our God for me. Amen.
St. Michael the Archangel, defend us in battle; be our safeguard against ...
St. Michael the Archangel, defend us in battle; be our safeguard against ...
... the wickedness and snares of the Devil. May God rebuke him, ...
... we humbly pray, and do Thou, O Prince of the Heavenly Host, ...
... we humbly pray, and do Thou, O Prince of the Heavenly Host, ...
... we humbly pray, and do Thou, O Prince of the Heavenly Host, ...
... we humbly pray, and do Thou, O Prince of the Heavenly Host, ...
... by the power of God, cast into Hell, Satan and all the other evil spirits, ...
... who wander throughout the world, seeking the ruin of souls. Amen.
Angel of God, my guardian dear, to whom His love commits me here, ...
... ever this night be at my side, to light and guard, to rule and guide. Amen.
Ave Maria, gratia plena, Dominus tecum. Benedicta tu in mulieribus, ...
... et benedictus fructus ventris tui, Iesus. Sancta Maria, Mater Dei, ...
... et benedictus fructus ventris tui, Iesus. Sancta Maria, Mater Dei, ...
... et benedictus fructus ventris tui, Iesus. Sancta Maria, Mater Dei, ...
... ora pro nobis peccatoribus, nunc, et in hora mortis nostrae. Amen.
Benedictus Sanctus Spiritus, Paraclitus.
Benedicta excelsa Mater Dei, Maria sanctissima.
Benedicta sancta eius et immaculata Conceptio.
Benedicta sancta eius et immaculata Conceptio.
Benedicta eius gloriosa Assumptio.
Benedictum nomen Mariae, Virginis et Matris.
Benedictum nomen Mariae, Virginis et Matris.
Benedictus sanctus Ioseph, eius castissimus Sponsus.
Benedictus Deus in Angelis suis, et in Sanctis suis. Amen.
In nomine Patris et Filii et Spiritus Sancti. Amen.
O my God, I am heartily sorry for having offended Thee and I detest all my sins...
O my God, I am heartily sorry for having offended Thee and I detest all my sins...
Eye'm the strongest!
...because of Thy just punishments, but most of all because they offend Thee, ...
...my God, who art all good and deserving of all my love.
I firmly resolve, with the help of Thy grace, to sin no more...
I firmly resolve, with the help of Thy grace, to sin no more...
...and avoid the near occasions of sin. Amen.
O my God! I firmly believe that Thou art one God in three Divine persons, ...
O my God! I firmly believe that Thou art one God in three Divine persons, ...
...Father, Son, and Holy Ghost; I believe that Thy Divine Son became man, ...
...and died for our sins, and that he will come to, judge the living and the dead.
I believe these and all the truths which the Holy Catholic Church teaches, ...
...because Thou hast revealed them, who canst neither deceive nor be deceived.
O my God! relying on Thy infinite goodness and promises, ...
...I hope to obtain pardon of my sins, the help of Thy grace, ...
...and life everlasting, through the merits of Jesus Christ, my Lord and Redeemer.
...and life everlasting, through the merits of Jesus Christ, my Lord and Redeemer.
O my God! I love Thee above all things, with my whole heart and soul, ...
...because Thou art all-good and worthy of all love.
...because Thou art all-good and worthy of all love.
Yukkuri Shiteitte ne
I love my neighbor as myself for the love of Thee.
I forgive all who have injured me, and ask pardon of all whom I have injured.
I forgive all who have injured me, and ask pardon of all whom I have injured.
I forgive all who have injured me, and ask pardon of all whom I have injured.
O my Jesus, forgive us our sins, save us from the fires of Hell, ...
...lead all souls to Heaven, especially those in most need of Thy mercy.
I confess to Almighty God, to blessed Mary ever Virgin, ...
... to blessed Michael the Archangel, to blessed John the Baptist, ...
... to the holy Apostles Peter and Paul, and to all the Saints, ...
... that I have sinned exceedingly, in thought, word, and deed, ...
... through my fault, through my fault, through my most grievous fault.
Therefore I beseech blessed Mary ever Virgin, blessed Michael the Archangel, ...
... blessed John the Baptist, the holy Apostles Peter and Paul, ...
... and all the Saints to pray to the Lord our God for me. Amen.
St. Michael the Archangel, defend us in battle; be our safeguard against ...
St. Michael the Archangel, defend us in battle; be our safeguard against ...
... the wickedness and snares of the Devil. May God rebuke him, ...
... we humbly pray, and do Thou, O Prince of the Heavenly Host, ...
... we humbly pray, and do Thou, O Prince of the Heavenly Host, ...
... we humbly pray, and do Thou, O Prince of the Heavenly Host, ...
... we humbly pray, and do Thou, O Prince of the Heavenly Host, ...
... by the power of God, cast into Hell, Satan and all the other evil spirits, ...
... who wander throughout the world, seeking the ruin of souls. Amen.
Angel of God, my guardian dear, to whom His love commits me here, ...
... ever this night be at my side, to light and guard, to rule and guide. Amen.
Ave Maria, gratia plena, Dominus tecum. Benedicta tu in mulieribus, ...
... et benedictus fructus ventris tui, Iesus. Sancta Maria, Mater Dei, ...
... et benedictus fructus ventris tui, Iesus. Sancta Maria, Mater Dei, ...
... et benedictus fructus ventris tui, Iesus. Sancta Maria, Mater Dei, ...
... ora pro nobis peccatoribus, nunc, et in hora mortis nostrae. Amen.
Salve, Regina, mater misericordiae: vita, dulcedo, et spes nostra, salve.
Ad te clamamus exsules filii Hevae. Ad te suspiramus, gementes et flentes ...
Ad te clamamus exsules filii Hevae. Ad te suspiramus, gementes et flentes ...
... in hac lacrimarum valle. Eia, ergo, advocata nostra, illos tuos ...
... misericordes oculos ad nos converte. Et Iesum, benedictum fructum ...
... ventris tui, nobis post hoc exsilium ostende. O clemens, O pia, ...
... O dulcis Virgo Maria. Ora pro nobis, sancta Dei Genetrix.
kLhLUKE-JR IS A PEDOPHILE! Oh, and god isn't real, sucka. Stop polluting the blockchain with your nonsense.
Ut digni efficiamur promissionibus Christi. Amen.
Pater noster, qui es in caelis, sanctificetur Nomen tuum. Adveniat regnum tuum.
Pater noster, qui es in caelis, sanctificetur Nomen tuum. Adveniat regnum tuum.
Fiat voluntas tua, sicut in caelo et in terra. Panem nostrum quotidianum ...
Salve, Regina, mater misericordiae: vita, dulcedo, et spes nostra, salve.
Ad te clamamus exsules filii Hevae. Ad te suspiramus, gementes et flentes ...
Ad te clamamus exsules filii Hevae. Ad te suspiramus, gementes et flentes ...
... in hac lacrimarum valle. Eia, ergo, advocata nostra, illos tuos ...
... misericordes oculos ad nos converte. Et Iesum, benedictum fructum ...
... ventris tui, nobis post hoc exsilium ostende. O clemens, O pia, ...
... O dulcis Virgo Maria. Ora pro nobis, sancta Dei Genetrix.
kLhLUKE-JR IS A PEDOPHILE! Oh, and god isn't real, sucka. Stop polluting the blockchain with your nonsense.
Ut digni efficiamur promissionibus Christi. Amen.
Pater noster, qui es in caelis, sanctificetur Nomen tuum. Adveniat regnum tuum.
Pater noster, qui es in caelis, sanctificetur Nomen tuum. Adveniat regnum tuum.
Fiat voluntas tua, sicut in caelo et in terra. Panem nostrum quotidianum ...
... da nobis hodie, et dimitte nobis debita nostra sicut et nos dimittimus ...
... debitoribus nostris. Et ne nos inducas in tentationem, sed libera nos a malo.
Domine Iesu Christe, Filius Dei, miserere me peccatorem!
Sanae is a good girl
We adore Thee, O Christ, and we bless Thee;
We adore Thee, O Christ, and we bless Thee;
because by Thy holy Cross Thou hast redeemed the world.
May the Holy Trinity be blessed.
Christ conquers! Christ reigns! Christ commands!
O Heart of Jesus, burning with love for us, inflame our hearts with love for Thee.
O Heart of Jesus, burning with love for us, inflame our hearts with love for Thee.
O Heart of Jesus, I place my trust in Thee.
O Heart of Jesus, all for Thee.
O Heart of Jesus, all for Thee.
Most Sacred Heart of Jesus, have mercy on us.
O God, have mercy on me, a sinner.
Teach me to do Thy will, because Thou art my God.
Help me, ERINNNNNN!!
O Lord, increase our faith.
O Lord, save us, we are perishing.
O Lord, increase our faith.
O Lord, save us, we are perishing.
O Lord, increase our faith.
O Lord, save us, we are perishing.
O Lord, increase our faith.
O Lord, save us, we are perishing.
May the Most Blessed Sacrament be praised and adored forever.
Jesus, meek and humble of heart, make my heart like unto thine!
Holy Trinity, one God, have mercy on us!
Gloria Patri, et Filio, et Spiritui Sancto. Sicut erat in principio, ...
... et nunc, et semper, et in saecula saeculorum. Amen.
... et nunc, et semper, et in saecula saeculorum. Amen.


It seems that I'm nearly the only one that such things disturb, so, ok for the prayers
The problem is that:
Code:
LUKE-JR IS A PEDOPHILE! Oh, and god isn't real, sucka. Stop polluting the blockchain with your nonsense.
Which is not only something we will never know if it's true, but also the beginning of a blockchain religious war and part of a tx so not deletable

I don't know what is worse, a religious war or using a format not as simple as raw data...
Jump to: