0099: "Binary Heart"

This forum is for the individual discussion thread that goes with each new comic.

Moderators: Moderators General, Prelates, Magistrates

User avatar
Shoofle
Posts: 409
Joined: Sun Apr 09, 2006 9:28 pm UTC
Location: Location, Location.
Contact:

0099: "Binary Heart"

Postby Shoofle » Mon May 08, 2006 11:11 am UTC

See, the question is, what does it say? I do not have the time to convert it, but my guess is that it (a) has <3 in it, or else that it says something equivalent to "You have too much free time, to have decoded this!" except not as wordily, because it's not many characters. I think. But that's the kind of thing I've come to expect of him.

Edit: Oh, nevermind maybe. I think I see a pattern, so it's unlikely it's text. Look on the fourth column at the top and then down and right - there's a diagonal line of zeroes. Also, I think I found some other ones, but they are difficult to describe.

Edit: Whoops, it says what it decodes to on the store page. Hmm. The pattern therefore must be a coincidence (sp?).

User avatar
davean
Site Ninja
Posts: 2498
Joined: Sat Apr 08, 2006 7:50 am UTC
Contact:

Postby davean » Tue May 09, 2006 12:53 pm UTC

Its a short snippet of repeating text ... duh, its always going to have A pattern. Infact, not being able to find a pattern in random digits is basicly unheard of.

/me slaps Shoofle upside the head with probability.

User avatar
Frankeinstein
Posts: 97
Joined: Fri Apr 21, 2006 5:39 pm UTC

Postby Frankeinstein » Tue May 09, 2006 1:01 pm UTC


User avatar
davean
Site Ninja
Posts: 2498
Joined: Sat Apr 08, 2006 7:50 am UTC
Contact:

Postby davean » Tue May 09, 2006 2:28 pm UTC

Frankeinstein wrote:Look here: http://en.wikipedia.org/wiki/Apophenia


Yup, someone can make a lot of moeny offering to tell Shoofle his fortune ;)

User avatar
Shoofle
Posts: 409
Joined: Sun Apr 09, 2006 9:28 pm UTC
Location: Location, Location.
Contact:

Postby Shoofle » Tue May 09, 2006 3:10 pm UTC

/me bleeds all over the submit button.
Maan, you slapped me too hard! But anyway and seriously, what is the likelyhood of a diagonal line (constant slope, constant stuff, etc) going down through the whole message? I think it might be an artifact of the repeating pattern, but would something like that really show up in random numbers?

User avatar
Frankeinstein
Posts: 97
Joined: Fri Apr 21, 2006 5:39 pm UTC

Postby Frankeinstein » Tue May 09, 2006 3:44 pm UTC

In the binary heart picture the pattern comes from the repeating. Otherwise you just have to look harder if you want to see patterns.

User avatar
davean
Site Ninja
Posts: 2498
Joined: Sat Apr 08, 2006 7:50 am UTC
Contact:

Postby davean » Tue May 09, 2006 10:32 pm UTC

Shoofle wrote:/me bleeds all over the submit button.
Maan, you slapped me too hard! But anyway and seriously, what is the likelyhood of a diagonal line (constant slope, constant stuff, etc) going down through the whole message? I think it might be an artifact of the repeating pattern, but would something like that really show up in random numbers?


That line? Low. A line? Almost guarrentied. You have to remember, theres a lot of possible lines, each that you woudl see, each with a low probability of occuring, and almost no image without one of the lines.

User avatar
xkcd
Site Ninja
Posts: 365
Joined: Sat Apr 08, 2006 8:03 am UTC
Contact:

Postby xkcd » Tue May 09, 2006 11:00 pm UTC

/me bleeds all over the submit button.
Maan, you slapped me too hard! But anyway and seriously, what is the likelyhood of a diagonal line (constant slope, constant stuff, etc) going down through the whole message? I think it might be an artifact of the repeating pattern, but would something like that really show up in random numbers?
That line? Low. A line? Almost guarrentied. You have to remember, theres a lot of possible lines, each that you woudl see, each with a low probability of occuring, and almost no image without one of the lines.

Oh, you know very well that in that block seeing a set of completely regular repeating lines with that character is a sign that something's up, especially when you don't have a strong reason to think you're looking at a random pattern. Be nice.

strangegod
Posts: 5
Joined: Sun Jun 11, 2006 5:30 am UTC

Postby strangegod » Sun Jun 11, 2006 6:24 am UTC

it says 'i love you'.

User avatar
davean
Site Ninja
Posts: 2498
Joined: Sat Apr 08, 2006 7:50 am UTC
Contact:

Postby davean » Tue Jun 13, 2006 1:27 pm UTC

strangegod wrote:it says 'i love you'.



But its a lie.

heatsink
Posts: 86
Joined: Fri Jun 30, 2006 8:58 am UTC

Postby heatsink » Fri Jun 30, 2006 9:04 am UTC

Why are some of the letters 'o' uppercase?

Fluidfox
Protector of the Null Set
Posts: 41
Joined: Fri Apr 28, 2006 12:04 pm UTC
Contact:

Postby Fluidfox » Fri Jun 30, 2006 9:46 am UTC

To lock in freshness and preserve the flavor of the 1's. (also if you insert 010 after every large 0 the derived result of the affected sectons is "Herpes")

the above statement is completely fradulent.. . . . . or is it?

User avatar
Shoofle
Posts: 409
Joined: Sun Apr 09, 2006 9:28 pm UTC
Location: Location, Location.
Contact:

Postby Shoofle » Fri Jun 30, 2006 1:26 pm UTC

heatsink wrote:Why are some of the letters 'o' uppercase?


Leading scientists are calling it "a mystery."

Chocobean
Posts: 19
Joined: Sat Jul 01, 2006 1:42 am UTC

Postby Chocobean » Sat Jul 01, 2006 2:13 am UTC

Fluidfox wrote:To lock in freshness and preserve the flavor of the 1's. (also if you insert 010 after every large 0 the derived result of the affected sectons is "Herpes")

the above statement is completely fradulent.. . . . . or is it?


You evil man, that's brilliant!

Vonkwink
Posts: 12
Joined: Fri Jul 07, 2006 7:57 am UTC

Postby Vonkwink » Fri Jul 07, 2006 8:07 am UTC

davean wrote:Its a short snippet of repeating text ... duh, its always going to have A pattern. Infact, not being able to find a pattern in random digits is basicly unheard of.

/me slaps Shoofle upside the head with probability.


Actually - it has been proven that a pattern can be found with a sequence of numbers of any length. :). Although the pattern may be something ridiculous and absurd.

User avatar
davean
Site Ninja
Posts: 2498
Joined: Sat Apr 08, 2006 7:50 am UTC
Contact:

Postby davean » Fri Jul 07, 2006 8:48 am UTC

Vonkwink wrote:
davean wrote:Its a short snippet of repeating text ... duh, its always going to have A pattern. Infact, not being able to find a pattern in random digits is basicly unheard of.

/me slaps Shoofle upside the head with probability.


Actually - it has been proven that a pattern can be found with a sequence of numbers of any length. :). Although the pattern may be something ridiculous and absurd.


To self quote "its always going to have A pattern." and ones ability to FIND such can be limited thou.

hbah427
Posts: 1
Joined: Thu Dec 14, 2006 1:42 am UTC
Contact:

i actually decoded it!!!!!!

Postby hbah427 » Thu Dec 14, 2006 1:46 am UTC

i typed it all exactly into a translator and heres what it said, EXACTLY here we go "iloveyOuilOveyouiloveyOuilOveyOuilNìÊòžÃªÃ’ØÞìÊòÞêÒ؞ìÊòÞêÒ؞í•Ã¥=Õ¥±=Ù"

JavaBean
Posts: 6
Joined: Fri Dec 15, 2006 9:13 am UTC

Capital/lowercase Os

Postby JavaBean » Fri Dec 15, 2006 9:30 am UTC

When I looked at the questions about the capital O versus lowercase o, I noticed that there are exactly 4 repetitions of the string, and thus 8 Os, some of which are lowercase and some uppercase. That's 8 sources of data, each capable of encoding a single bit - surely, there must be a super-secret message hidden within the secret message.

If we interpret an O as a 0 and an o as a 1 we get one thing: 10011000=0x98=152='~'.
If we interpret an O as 1, and an o as 0, we instead get: 01100111=0x67=147='g'.

Sadly, neither of these make much sense as a hidden message. Even combining them is not much good: ~g. My personal preference is to read it as '~', as in "home". Home is where the heart is, see?

At any rate, this is an excellent proof that you can find information in any meaningless string of bits, provided you're willing to seriously weaken your definition of "information".

User avatar
indiemaiden
Posts: 6
Joined: Fri Jun 01, 2007 6:05 pm UTC
Location: Philadelphia, PA
Contact:

Postby indiemaiden » Fri Jun 01, 2007 6:08 pm UTC

011010010110110001101111011101100110010101111001010011110111010101101001011011000100111101110110011001010111100101101111011101010110100101101100011011110111011001100101011110010100111101110101011010010110110001001111011101100110010101111001010011110111010101101001011011000110111101110110011001010111100101101111011101010110100101101100010011110111011001100101011110010110111101110101011010010110110001001111011101100110010101111001010011110111010101101001011011000100111101110110011

means

iloveyOuilOveyouiloveyOuilOveyOuiloveyouilOveyouilOveyOuilOv


(010011000100111101001100010111100101111101011110)

LE4dGOLEM SAYS: Shrink'd!
(Actually, to tell the truth, I don't like jelly with my peanut butter.)

kemosabi
Posts: 1
Joined: Wed Nov 28, 2007 7:39 pm UTC

Re: Binary Heart

Postby kemosabi » Wed Nov 28, 2007 7:54 pm UTC

I think the previous decode might have contained a typo...
I got enough repeats of "iloveyou" with varying captialization of O characters
that I had 15. I took these as three groups of 5, interpreted them as bits,
and came up with some initials. The question is: am I maybe digging too deep
or digging the wrong way?

Here, try this:

Code: Select all

#!/usr/bin/perl
while (<DATA>) {
   $x .= $_;
}
$x =~ tr/01//cd;
$y = pack("B*", $x);
print "$y\n";
$s = $y;
$s =~ tr/Oo/01/;
$s =~ tr/01/ /c;
print $s, "\n";
$s =~ tr/01//cd;
print "       " . join("       ", grep(/\d{5}/, split(/(\d{5})/, $s))), "\n";
print "   010 " . join("   010 ", grep(/\d{5}/, split(/(\d{5})/, $s))), "\n";
#print $s, "\n";
$s = "010" . join("010", grep(/\d{5}/, split(/(\d{5})/, $s)));
print pack("B*", $s), "\n";
__END__
011010010110110001101
111011101100110010101
111001010011110111010
101101001011011000100
111101110110011001010
111100101101111011101
010110100101101100011
011110111011001100101
011110010100111101110
101011010010110110001
001111011101100110010
101111001010011110111
010101101001011011000
110111101110110011001
010111100101101111011
101010110100101101100
010011110111011001100
101011110010110111101
110101011010010110110
001001111011101100110
010101111001010011110
111010101101001011011
000100111101110110011


For me, the output is:

Code: Select all

iloveyOuilOveyouiloveyOuilOveyOuiloveyouilOveyouilOveyOuilOv`
  1   0   0   1   1   0   0   0   1   1   0   1   0   0   0 
       10011       00011       01000
   010 10011   010 00011   010 01000
SCH


Steganographic insight or PERL-assisted apophenia? Only you can decide.
But I like the idea of initials: like carving initials into something.

User avatar
genewitch
Posts: 298
Joined: Sun Feb 25, 2007 2:28 am UTC

Re: Binary Heart

Postby genewitch » Thu Dec 13, 2007 2:05 am UTC

as if we weren't already impressed with this comic, you get an enigma wrapped in another enigma.
...C is for people who would rather sit at home and match up pairs of socks by the count of their elastic bands, than to just get dressed with mismatched shoes and take the lady out to dinner and nail her in the car on the way home -xkcd_n00bz
MyMusic

User avatar
'; DROP DATABASE;--
Posts: 3284
Joined: Thu Nov 22, 2007 9:38 am UTC
Location: Midwest Alberta, where it's STILL snowy
Contact:

Re: Binary Heart

Postby '; DROP DATABASE;-- » Sat Dec 15, 2007 5:19 am UTC

If Randall is anything like me those are someone's initials. :P I've been known to use "random" numbers that were shorted names converted to Decimal, for example. *cough*1298754409*cough*
poxic wrote:You suck. And simultaneously rock. I think you've invented a new state of being.

anka
Posts: 1
Joined: Thu Aug 07, 2008 3:34 pm UTC

Re: Binary Heart

Postby anka » Thu Aug 07, 2008 4:57 pm UTC

I think that the letters kemosabi extracted from the binary code should be lowercase, because the last three bits in the string is 011. If you replace the 010 he added with the 011 from the end of the string, then you will get the same letters lowercase.

Code: Select all

#!/usr/bin/perl
while (<DATA>) {
   $x .= $_;
}
$x =~ tr/01//cd;
$l = length($x)-length($x)%8;
$t = substr($x, $l);
$x = substr($x, 0, $l);
$y = pack("B*", $x);
$y = $y;
print "$y\n";
$s = $y;
$s =~ tr/Oo/01/;
$s =~ tr/01/ /c;
print $s, "\n";
$s =~ tr/01//cd;
print "       " . join("       ", grep(/\d{5}/, split(/(\d{5})/, $s))), "\n";
print "   $t " . join("   $t ", grep(/\d{5}/, split(/(\d{5})/, $s))), "\n";
#print $s, "\n";
$s = "$t" . join("$t", grep(/\d{5}/, split(/(\d{5})/, $s)));
print pack("B*", $s), "\n";
__END__
011010010110110001101
111011101100110010101
111001010011110111010
101101001011011000100
111101110110011001010
111100101101111011101
010110100101101100011
011110111011001100101
011110010100111101110
101011010010110110001
001111011101100110010
101111001010011110111
010101101001011011000
110111101110110011001
010111100101101111011
101010110100101101100
010011110111011001100
101011110010110111101
110101011010010110110
001001111011101100110
010101111001010011110
111010101101001011011
000100111101110110011


Output:

Code: Select all

iloveyOuilOveyouiloveyOuilOveyOuiloveyouilOveyouilOveyOuilOv
  1   0   0   1   1   0   0   0   1   1   0   1   0   0   0
       10011       00011       01000
   011 10011   011 00011   011 01000
sch

aforsberg
Posts: 1
Joined: Sat Apr 25, 2009 5:42 pm UTC

Re: Binary Heart

Postby aforsberg » Sat Apr 25, 2009 5:43 pm UTC

"0110100101101100011011110111011001100101011110010100111101110101011010010110110001001111011101100110010101111001011011110111010101101001011011000110111101110110011001010111100101001111011101010110100101101100010011110111011001100101011110010100111101110101011"

Translates to:

"iloveyouiloveyouiloveyouiloveyou"...

10nitro
Posts: 192
Joined: Mon Nov 03, 2008 8:46 pm UTC
Contact:

Re: "Binary Heart" Discussion

Postby 10nitro » Thu Aug 27, 2009 12:12 am UTC

011010010110110001101
111011101100110010101
111001010011110111010
101101001011011000100
11110
1110110011001010
111
100101101111011101
010
110100101101100011
011
110111011001100101
01
1110010100111101110
10
1011010010110110001
001
111011101100110010
101
111001010011110111
0101
01101001011011000
11011
1101110110011001
010111
100101101111011
1010101
10100101101100
01001111
0111011001100
101011110
010110111101
1101010110
10010110110
001001111011101100110
010101111001010011110
111010101101001011011
000100111101110110011


the heart is not symmetrical: (differences underlined)
Spoiler:
011010010110110001101
111011101100110010101
111001010011110111010
101101001011011000100
11110
1110110011001010
111
100101101111011101
010
110100101101100011
011
110111011001100101
01
1110010100111101110
10
1011010010110110001
001
111011101100110010
101
111001010011110111
0101
01101001011011000
11011
1101110110011001
010111
100101101111011
1010101
10100101101100
01001111
0111011001100
101011110
010110111101
1101010110
10010110110
001001111011101100110
010101111001010011110
111010101101001011011
000100111101110110011

The question is: what do we do? Take the value of the digits? 0 for black, 1 for red?

Exact translation, with 3 bits shaved off the end:

Code: Select all

iloveyOuilOveyouiloveyOuilOveyOuiloveyouilOveyouilOveyOuilOv

The omitted bits are `011'.

Also, a breakdown of each digit to corresponding letter: (for anyone who may find it useful) ( each letter is in the format `<<<x>>>>')
Spoiler:

Code: Select all

011010010110110001101
<<<i>>>><<<l>>>><<<o>
111011101100110010101
>>><<<v>>>><<<e>>>><<
111001010011110111010
<y>>>><<<O>>>><<<u>>>
101101001011011000100
><<<i>>>><<<l>>>><<<O
111101110110011001010
>>>><<<v>>>><<<e>>>><
111100101101111011101
<<y>>>><<<o>>>><<<u>>
010110100101101100011
>><<<i>>>><<<l>>>><<<
011110111011001100101
o>>>><<<v>>>><<<e>>>>
011110010100111101110
<<<y>>>><<<O>>>><<<u>
101011010010110110001
>>><<<i>>>><<<l>>>><<
001111011101100110010
<O>>>><<<v>>>><<<e>>>
101111001010011110111
><<<y>>>><<<O>>>><<<u
010101101001011011000
>>>><<<i>>>><<<l>>>><
110111101110110011001
<<o>>>><<<v>>>><<<e>>
010111100101101111011
>><<<y>>>><<<o>>>><<<
101010110100101101100
u>>>><<<i>>>><<<l>>>>
010011110111011001100
<<<O>>>><<<v>>>><<<e>
101011110010110111101
>>><<<y>>>><<<o>>>><<
110101011010010110110
<u>>>><<<i>>>><<<l>>>
001001111011101100110
><<<O>>>><<<v>>>><<<e
010101111001010011110
>>>><<<y>>>><<<O>>>><
111010101101001011011
<<u>>>><<<i>>>><<<l>>
000100111101110110011
>><<<O>>>><<<v>>>><<<


Chocobean wrote:
Fluidfox wrote:To lock in freshness and preserve the flavor of the 1's. (also if you insert 010 after every large 0 the derived result of the affected sectons is "Herpes")

the above statement is completely fradulent.. . . . . or is it?
You evil man, that's brilliant!
To clarify, it doesn't. With 6 bits shaved off the end, it becomes:

Code: Select all

iloveyON&#173;-&#710;&#189;&#217;&#8226;&#229;&#189;&#213;&#165;&#177;&#189;&#217;&#8226;&#229;=:&#180;&#182;'&#167;fW&#8221;&#244;&#234;&#210;&#216;&#222;&#236;&#202;&#242;&#222;&#234;&#210;&#216;&#382;&#157;&#8482;^[&#221;Z[&#211;&#179;+&#202;zuilON
~ Luke Shumaker
FRC1024 Programmer
IT technician, GNU/Linux admin, comp. security guy
Eagle Scout
http://lukeshu.ath.cx

davor
Posts: 14
Joined: Sat Aug 29, 2009 3:32 pm UTC

Re: "Binary Heart" Discussion

Postby davor » Sat Aug 29, 2009 4:00 pm UTC

10nitro wrote:Exact translation, with 3 bits shaved off the end:

Code: Select all

iloveyOuilOveyouiloveyOuilOveyOuiloveyouilOveyouilOveyOuilOv

The omitted bits are `011'.


Exact[*] translation, without shaving off those last three bits:

Code: Select all

iloveyOuilOveyouiloveyOuilOveyOuiloveyouilOveyouilOveyOuilOv^C


Damn, Randall's good.

[*] Well, not quite exact -- there's a little judicious zero-padding involved...

10nitro
Posts: 192
Joined: Mon Nov 03, 2008 8:46 pm UTC
Contact:

Re: "Binary Heart" Discussion

Postby 10nitro » Thu Jan 21, 2010 11:12 pm UTC

davor wrote:
10nitro wrote:Exact translation, with 3 bits shaved off the end:

Code: Select all

iloveyOuilOveyouiloveyOuilOveyOuiloveyouilOveyouilOveyOuilOv

The omitted bits are `011'.


Exact[*] translation, without shaving off those last three bits:

Code: Select all

iloveyOuilOveyouiloveyOuilOveyOuiloveyouilOveyouilOveyOuilOv^C


Damn, Randall's good.

[*] Well, not quite exact -- there's a little judicious zero-padding involved...

Yes, it is the ^C sequence, however, it may be worth noting that Windows displays ^C as a heart. (I was just sshing to my laptop from a Winblows maching).
~ Luke Shumaker
FRC1024 Programmer
IT technician, GNU/Linux admin, comp. security guy
Eagle Scout
http://lukeshu.ath.cx

victoriaw
Posts: 6
Joined: Thu Jan 27, 2011 5:33 pm UTC

Re: 0099: "Binary Heart"

Postby victoriaw » Mon Jan 31, 2011 5:43 pm UTC

Roses are #FF0000
Violets are #0000FF
chown -R you ~/base

Polevata
Posts: 1
Joined: Fri Dec 19, 2014 5:50 pm UTC

Re: 0099: "Binary Heart"

Postby Polevata » Fri Dec 19, 2014 6:01 pm UTC

The way I see it,
"011010010110110001101
111011101100110010101
111001010011110111010
101101001011011000100
111101110110011001010
111100101101111011101
010110100101101100011
011110111011001100101
011110010100111101110
101011010010110110001
001111011101100110010
101111001010011110111
010101101001011011000
110111101110110011001
010111100101101111011
101010110100101101100
010011110111011001100
101011110010110111101
110101011010010110110
001001111011101100110
010101111001010011110
111010101101001011011
000100111101110110011" is either 3 characters too long, or 5 too short. To continue the pattern, "00101" could be added to make it "iloveyOuilOveyouiloveyOuilOveyOuiloveyouilOveyouilOveyOuilOve" or one could just truncate the three extra digits to make it "iloveyOuilOveyouiloveyOuilOveyOuiloveyouilOveyouilOveyOuilOv". Next, I treated each O/o as a one or zero and spliced all the other letters out. This made the sequence "100110001101000" or "011001110010111". Since these are only 15 digits long, I tried adding both a one and a zero to each. The first sequence creates some strange characters either way, so I assume the first one is the one that was meant, (o -> 0; O -> 1). Adding a 0 to this sequence translates to "g." and adding a 1 translates to "g/". Now this is the interesting bit. It is common convention to put /g/ into all subjects of emails relating to technology and coding. This tradition started on 4 chan and can be shortened to "g/". I think that was the idea of the author in making this heart as he is saying that he does indeed love technology.
TLDR:
1st level = Binary Heart
2nd level = "I love you repeated"
3rd level = "g/" (A term often associated with technology.)


Return to “Individual XKCD Comic Threads”

Who is online

Users browsing this forum: No registered users and 92 guests