Bitcoin Forum
November 01, 2024, 10:36:19 PM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 »  All
  Print  
Author Topic: Sending Encrypted Text Messages via BlockChain  (Read 3490 times)
Phinnaeus Gage (OP)
Legendary
*
Offline Offline

Activity: 1918
Merit: 1570


Bitcoin: An Idea Worth Spending


View Profile WWW
June 13, 2012, 05:14:18 PM
Last edit: June 13, 2012, 05:26:59 PM by Phinnaeus Gage
 #1

I thought of this last night, and not sure if this approached has been discussed before. The following is an example of how a rogue entity could send encrypted text messages back and forth to one another, and still keep the coins between themselves.

.011002
.011111
.01102
.0102
.0111
.01111
.0102
.011002
.01101
.01001
.011101
.011
.0102

.020101
.020002
.0211102
.021
.02101
.021
.02011
.020111
.0211
.02011
.02001
.021


The above that I devised is based on the simplest code readily available, but a more complex coding system, with each person having the key, can create a more complex one that would be a hell of a lot harder to crack. And it could all be done in the open for all to see.

In fact, a simple program could be built to create the sums on demand, ready to be hand-sent one-by-one or automatically, not all at once, but at a rate as if a human were inputting the amounts.

I started this post to bring awareness that this option exist and should be deeply considered.

Can you crack the code above?

~Bruno~
teflone
Hero Member
*****
Offline Offline

Activity: 770
Merit: 500


You're fat, because you dont have any pics on FB


View Profile
June 13, 2012, 06:44:58 PM
 #2

YOU TAKE THAT BACK ABOUT MY MOTHER!!!!   Shocked

For Canadians by Canadians: Canada's Bitcoin Community - https://www.coinforum.ca/
Xenland
Legendary
*
Offline Offline

Activity: 980
Merit: 1003


I'm not just any shaman, I'm a Sha256man


View Profile
June 13, 2012, 10:53:58 PM
 #3

Hmmmm this could be made into a wevsite easily!!!
legolouman
Hero Member
*****
Offline Offline

Activity: 504
Merit: 504


Decent Programmer to boot!


View Profile
June 13, 2012, 10:57:20 PM
 #4

Great idea, but what if the network accepts the payments in a funny order? Certainly won't always be the case, but it might happen. Your message of "cheese" could turn into "echsee"

If you love me, you'd give me a Satoshi!
BTC - 1MSzGKh5znbrcEF2qTrtrWBm4ydH5eT49f
LTC - LYeJrmYQQvt6gRQxrDz66XTwtkdodx9udz
Xenland
Legendary
*
Offline Offline

Activity: 980
Merit: 1003


I'm not just any shaman, I'm a Sha256man


View Profile
June 13, 2012, 11:13:26 PM
 #5

Great idea, but what if the network accepts the payments in a funny order? Certainly won't always be the case, but it might happen. Your message of "cheese" could turn into "echsee"
Hmm maybe there is a timestamp when they were "sent" to the nodes (instead of looking at the timestamps when they were mined into a block)
fatigue
Full Member
***
Offline Offline

Activity: 196
Merit: 100


Bitcoin is a food group.


View Profile
June 13, 2012, 11:16:53 PM
 #6

Either that or the transactions would have to be sent over a longer time period to ensure that they are confirmed in order.
Serge
Legendary
*
Offline Offline

Activity: 1050
Merit: 1000


View Profile
June 13, 2012, 11:21:22 PM
 #7

nah, you could just put 01,02,03... prefix or suffix to make sure correct order and send them all in one batch
adamstgBit
Legendary
*
Offline Offline

Activity: 1904
Merit: 1037


Trusted Bitcoiner


View Profile WWW
June 13, 2012, 11:25:38 PM
 #8

do not needlessly pollute the blockchain

Xenland
Legendary
*
Offline Offline

Activity: 980
Merit: 1003


I'm not just any shaman, I'm a Sha256man


View Profile
June 13, 2012, 11:26:27 PM
 #9

Either that or the transactions would have to be sent over a longer time period to ensure that they are confirmed in order.
Yeah, basically you'd have to cron job the block chain for confirmed transaction then send the next letter so the time would take (if your lucky) 10 minutes per letter :/

You could however have one transaction represent multiple letters (maybe up to 5 letters) for example

with single letters(to show a comparison)
Quote
A(0.00000001 BTC)
-
Z(0.00000026 BTC)

Multiple letters
Quote
AA(0.00000027 BTC)
AB(0.00000028 BTC)
....
....
AZ(0.00000054 BTC)
....
....
BZ(0.00000080 BTC)
You get the point...

bbit
Legendary
*
Offline Offline

Activity: 1330
Merit: 1000


Bitcoin


View Profile
June 13, 2012, 11:28:28 PM
 #10

there you go again taking shots at my mom agian!  Shocked


           █████████████████     ████████
          █████████████████     ████████
         █████████████████     ████████
        █████████████████     ████████
       ████████              ████████
      ████████              ████████
     ████████     ███████  ████████     ████████
    ████████     █████████████████     ████████
   ████████     █████████████████     ████████
  ████████     █████████████████     ████████
 ████████     █████████████████     ████████
████████     ████████  ███████     ████████
            ████████              ████████
           ████████              ████████
          ████████     █████████████████
         ████████     █████████████████
        ████████     █████████████████
       ████████     █████████████████
▄▄
██
██
██
██
██
██
██
██
██
██     
██
██
▬▬ THE LARGEST & MOST TRUSTED ▬▬
      BITCOIN SPORTSBOOK     
   ▄▄
██
██
██
██
██
██
██
██
██
██     
██
██
             ▄▄▄▄▀▀▀▀▄
     ▄▄▄▄▀▀▀▀        ▀▄▄▄▄           
▄▀▀▀▀                 █   ▀▀▀▀▀▀▀▄▄
█                    ▀▄          █
 █   ▀▌     ██▄        █          █               
 ▀▄        ▐████▄       █        █
  █        ███████▄     ▀▄       █
   █      ▐████▄█████████████████████▄
   ▀▄     ███████▀                  ▀██
    █      ▀█████    ▄▄        ▄▄    ██
     █       ▀███   ████      ████   ██
     ▀▄        ██    ▀▀        ▀▀    ██
      █        ██        ▄██▄        ██
       █       ██        ▀██▀        ██
       ▀▄      ██    ▄▄        ▄▄    ██
        █      ██   ████      ████   ██
         █▄▄▄▄▀██    ▀▀        ▀▀    ██
               ██▄                  ▄██
                ▀████████████████████▀




  CASINO  ●  DICE  ●  POKER   
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
   24 hour Customer Support   

▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
austonst
Member
**
Offline Offline

Activity: 76
Merit: 10



View Profile
June 13, 2012, 11:38:53 PM
 #11

Correct me if I'm wrong, but if a transaction has multiple outputs, doesn't the client generating the transaction have complete control over the numbering of the outputs? This would make it easy to read them in a certain order.

fatigue
Full Member
***
Offline Offline

Activity: 196
Merit: 100


Bitcoin is a food group.


View Profile
June 13, 2012, 11:41:48 PM
 #12

Either that or the transactions would have to be sent over a longer time period to ensure that they are confirmed in order.
Yeah, basically you'd have to cron job the block chain for confirmed transaction then send the next letter so the time would take (if your lucky) 10 minutes per letter :/

You could however have one transaction represent multiple letters (maybe up to 5 letters) for example

with single letters(to show a comparison)
Quote
A(0.00000001 BTC)
-
Z(0.00000026 BTC)

Multiple letters
Quote
AA(0.00000027 BTC)
AB(0.00000028 BTC)
....
....
AZ(0.00000054 BTC)
....
....
BZ(0.00000080 BTC)
You get the point...



Interesting concept but it would be limited by the fact that for example .00000028 BTC could be misinterpreted as BA.

What would be more susceptible to observation is using all of the decimal places but denoting 2 places to each letter

Quote
A(01)
B(02)
C(03)
D(04)
E(05)
F(06)
G(07)
H(08)
I(09)
J(10)
K(11)
L(12)
M(13)
N(14)
O(15)
P(16)
Q(17)
R(18)
S(19)
T(20)
U(21)
V(22)
W(23)
X(24)
Y(25)
Z(26)

Although the key to the code would obviously have these more random assignments

Quote
Message: This is coded

Transaction 1: This (.20080919)
Transaction 2: isco (.09190315)
Transaction 3: ded (.04050400)
austonst
Member
**
Offline Offline

Activity: 76
Merit: 10



View Profile
June 14, 2012, 12:18:39 AM
 #13

Using base 27, where 0 is a space, A=1, ..., Z=26, it would be possible to fit 5 letters into 8 decimal digits since 27^5=14,348,907. So, conversion for "Your mom" would be as follows:

Code:
Y: 25 * 27^4 = 13,286,025
O: 15 * 27^3 = 295,245
U: 21 * 27^2 = 15,309
R: 18 * 27^1 = 486
 :  0 * 27^0 = 0
Result: 0.13597065

M: 13 * 27^4 = 6,908,733
O: 15 * 27^3 = 295,245
M: 13 * 27^2 = 9,477
 :  0 * 27^1 = 0
 :  0 * 27^0 = 0
Result: 0.07213455

Decoding would be similar:

Code:
13,597,065 / 27^4 = 25 r311,040
311,040 / 27^3    = 15 r15,795
15,795 / 27^2     = 21 r486
486 / 27^1        = 18 r0
0 / 27^0          = 0
25 15 21 18  0
 Y  O  U  R  _

And so on for the next lines. You could extend this further by spending full coins (one preceding A-E won't end up going to the 9th digit, but F might, and anything higher will), but it would probably be a lot cheaper to just have multiple outputs and stick them together.

This may have been what Xenland was going for, but his look a little different... Of course, this works with a full alphabet and a character for a space or end of line, and would work with any sort of encryption that uses a 26 character alphabet. Slightly more compact than fatigue's, but a bit more difficult to work with.

fatigue
Full Member
***
Offline Offline

Activity: 196
Merit: 100


Bitcoin is a food group.


View Profile
June 14, 2012, 12:32:23 AM
 #14

Using base 27, where 0 is a space, A=1, ..., Z=26, it would be possible to fit 5 letters into 8 decimal digits since 27^5=14,348,907. So, conversion for "Your mom" would be as follows:

Code:
Y: 25 * 27^4 = 13,286,025
O: 15 * 27^3 = 295,245
U: 21 * 27^2 = 15,309
R: 18 * 27^1 = 486
 :  0 * 27^0 = 0
Result: 0.13597065

M: 13 * 27^4 = 6,908,733
O: 15 * 27^3 = 295,245
M: 13 * 27^2 = 9,477
 :  0 * 27^1 = 0
 :  0 * 27^0 = 0
Result: 0.07213455

Decoding would be similar:

Code:
13,597,065 / 27^4 = 25 r311,040
311,040 / 27^3    = 15 r15,795
15,795 / 27^2     = 21 r486
486 / 27^1        = 18 r0
0 / 27^0          = 0
25 15 21 18  0
 Y  O  U  R  _

And so on for the next lines. You could extend this further by spending full coins (one preceding A-E won't end up going to the 9th digit, but F might, and anything higher will), but it would probably be a lot cheaper to just have multiple outputs and stick them together.

This may have been what Xenland was going for, but his look a little different... Of course, this works with a full alphabet and a character for a space or end of line, and would work with any sort of encryption that uses a 26 character alphabet. Slightly more compact than fatigue's, but a bit more difficult to work with.

Ahh but the complication is key to preventing decryption. I like it! The only spot i could see a possible misinterpretation is the 0 being transmitted. how would the receiver know clearly if there was a space or if the word was continued in the next transaction?

EDIT: i see now that it would be a standard to perform the decryption method 5 times in all situations.
SgtSpike
Legendary
*
Offline Offline

Activity: 1400
Merit: 1005



View Profile
June 14, 2012, 12:42:01 AM
 #15

Speaking of this...

Someone seemingly sent me such a message to my main public BTC address a while back in block 181957.  I never did figure out what it was supposed to say...

18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.0100111
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.01101001
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.01100011
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.01100101
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.001
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.01001101
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.01101001
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.0110111
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.01100101
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.01100011
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.0111001
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.01100001
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.0110011
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.011101
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.001
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.0100001
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.01110101
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.01101001
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.011011
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.011001
18TKNbSLTrd3a2W8mtoH5uNzFhWRWNcuHU: 0.8021192
austonst
Member
**
Offline Offline

Activity: 76
Merit: 10



View Profile
June 14, 2012, 12:46:56 AM
 #16

It's ASCII: "Nice Minecraft Build"

Not sure about the last one. Change? IP address?

SgtSpike
Legendary
*
Offline Offline

Activity: 1400
Merit: 1005



View Profile
June 14, 2012, 12:50:09 AM
 #17

Ah, I tried that, but couldn't seem to make it work.  Maybe I failed to add the trailing zeros or something.  Anyway, thanks for translating.  Wink
Xenland
Legendary
*
Offline Offline

Activity: 980
Merit: 1003


I'm not just any shaman, I'm a Sha256man


View Profile
June 14, 2012, 01:13:01 AM
 #18


Interesting concept but it would be limited by the fact that for example .00000028 BTC could be misinterpreted as BA.

What would be more susceptible to observation is using all of the decimal places but denoting 2 places to each letter

Quote
A(01)
B(02)
C(03)
D(04)
E(05)
F(06)
G(07)
H(08)
I(09)
J(10)
K(11)
L(12)
M(13)
N(14)
O(15)
P(16)
Q(17)
R(18)
S(19)
T(20)
U(21)
V(22)
W(23)
X(24)
Y(25)
Z(26)
AB(27)
AC(28)
AD(29)
AE(30)
AF(31)
AG(32)
AH(33)
AJ(34)
AK(35)
AL(36)
AM(37)
AN(38)
AO(39)
AP(40)
AQ(50)
AR(51)
AS(52)
AT(53)
AU(54)
AV(55)
AW(56)
AX(57)
AY(58)
AZ(59)
BA(60)
BB(61)


I Counted wrong but yeah my point was to include multiple characters into on transaction.

with single letters(to show a comparison)
Quote
A(0.00000001 BTC)
-
Z(0.00000026 BTC)

Multiple letters
Quote
AA(0.00000027 BTC)
AB(0.00000028 BTC)
....
....
AZ(0.00000054 BTC)
....
....
BZ(0.00000080 BTC)
You get the point...



Xenland
Legendary
*
Offline Offline

Activity: 980
Merit: 1003


I'm not just any shaman, I'm a Sha256man


View Profile
June 14, 2012, 01:14:12 AM
 #19

nah, you could just put 01,02,03... prefix or suffix to make sure correct order and send them all in one batch

You'd have to have less characters in the transaction or use big numbers like 1BTC then 2BTC to signifiy order I don't think its worth it
Phinnaeus Gage (OP)
Legendary
*
Offline Offline

Activity: 1918
Merit: 1570


Bitcoin: An Idea Worth Spending


View Profile WWW
June 14, 2012, 01:48:07 AM
 #20

I didn't take into consideration the time aspect, therefore I modified the same message. My intent was to create an encrypted message as simple as possible. With the new coded message below--first part is a question and second part is the answer--it now does not matter in what order the coins are sent or received.

.0711002
.0821111
.081102
.08402
.05911
.004111
.05202
.0351002
.036101
.087001
.0471101
.0131
.06602

.1140101
.1150002
.19211102
.1651
.135101
.1891
.179011
.1320111
.13811
.146011
.126001
.1431


Feel free to still try to crack it. For a clue or two, it's in American English using very common words. Basically, both are complete sentences, albeit short and to the point. As you can clearly see, I did not change the order of the letters, but I easily could have, and the resulting text would still be the same.

Most here know that I'm not a coder, and a lot of the dialog above is kinda over my head, though I get the gist of what's being relayed and am capable of figuring out all that's been posted on this thread to date.

~Bruno~
Pages: [1] 2 »  All
  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!