Connect with us

Hi, what are you looking for?

Application's

Steganography and its applications in Bitcoin

Steganography and its applications in Bitcoin


This post was first published on Medium.

We introduce steganography and explore its potential use cases in the context of Bitcoin.

Steganography

Steganography is a method used to conceal a file (message, image, or video) within another file. The word itself stems from Greek, combining “steganos” (στεγανός), meaning “covered” or “secret,” and “graphein” (γράφειν) meaning “writing.” The main purpose of steganography is to communicate in a way that the existence of the message is kept hidden.

There are various techniques in steganography, ranging from the simple to the complex. Basic methods might involve embedding text within the least significant bits of an image file, where alterations are visually indiscernible to the human eye. More advanced techniques can involve embedding data within audio files, video files, or even the arrangement of words or characters in a text document.

Steganography is used in various fields for secure communicationcopyright protection, and even in digital watermarking to track unauthorized file copying.

Steganography has existed for a very long time. Historical tales reveal a unique communication technique from the Roman Empire era: a slave was selected and their head shaved for the purpose of conveying a secret message. Ink was used to tattoo the message onto the bald scalp of the slave. Once the hair had fully regrown, concealing the text, the slave was dispatched to the message’s intended recipient. Upon arrival, the recipient would shave the slave’s head once more to reveal and read the hidden message.

Credit

vs. Cryptography

Steganography revolves around concealing the very presence of a message, setting it apart from cryptography. While cryptography encrypts a message to make it unreadable to unauthorized viewers without hiding that a message is being sent, steganography aims to hide the very fact of its existence.

Steganography is most effective when used in conjunction with cryptography rather than as a replacement. This dual approach enables the concealment of the information’s existence as well as the protection of the content itself during storage or transmission. Steganography is almost always encrypted first in practice.

Least Significant Bit Steganography

Least Significant Bit (LSB) steganography is a popular technique used to hide information within an image by manipulating the least significant bits of the pixel values. A carrier image refers to the original image that is used to hide secret data or a hidden message within it, acting as a “cover” or “host” for the hidden data.

If you were presented with the number $00000000 and given the opportunity to alter just one digit before receiving the amount in cash, it would be unwise to modify the digit farthest to the right, turning it into $00000001. Clearly, adjusting the digit at the far left to make it $10,000,000, or ten million dollars, is far more advantageous than merely obtaining one dollar by changing the digit at the end. Though only a single digit is altered in both scenarios, the digit on the right is deemed the least significant because it impacts the total value the least.

The principle behind LSB steganography is similar and straightforward: it involves replacing the least significant bit(s) of an image’s pixel data with bits of the secret message. In digital images, each pixel’s color is typically represented by a combination of bits for red, green, and blue (RGB) components. The least significant bit is the bit in a byte of data, which has the smallest value or the rightmost bit in a series. This method is popular due to its simplicity and the fact that the changes made to the LSBs of the pixels are usually imperceptible to the human eye, thus maintaining the appearance of the original image while hiding the secret data.

RGBRGB
Credit: a digital image in RGB
177 in binary digits177 in binary digits
Credit: 177 in binary

Here’s a basic overview of how LSB steganography works:

  1. Convert the RGB values of each color channel into binary format.
  2. For each color channel, extract the four most significant bits (MSBs) from both the carrier image and the hidden image.
  3. Shift the four MSBs from the hidden image to replace the four least significant bits (LSBs) positions, merging them with the four MSBs of the carrier image.
  4. Reassemble the RGB channels, forming a new pixel that primarily reflects the carrier image’s MSBs but also encodes the hidden image’s MSBs within its LSBs. This causes a minor alteration in color, making the red box appear slightly more orange due to the embedded information.

Below is an example to hide an image in a cover/carrier image, using 4 least significant bits.

Pixel imagePixel image

Credit: hide Image 2 in Image 1

To retrieve the hidden message, the recipient, aware of the concealment technique, will reverse the procedure.

  1. Extract the four LSBs from each pixel of the modified image and shift them to the MSB positions.
  2. Populate the now-empty LSB positions with zeros (these represent data irretrievably lost in the encoding process).

The concealed image emerges, looking somewhat different from its original due to the LSBs’ data loss, resulting in a slightly darker appearance.

Below is an example.

ForestForest

Decoded imageDecoded image
Credit Top Left: original cover image; Top Right: coded image; Lower Left: original hidden image; Lower Right: decoded hidden image

The two forest images are virtually identical to the human eye while hiding another image.

Potential use cases

In the context of Bitcoin, steganography could protect your crypto assets from theft. It can hide secret information such as private keys, mnemonics, or Bitcoin transactions in an image. It could be beneficial for discreetly storing your seed phrase on paper within your home, making it less likely for a casual burglar to guess what it is. It could also serve well if you need to transport it on yourself through locations where you might undergo searches by individuals intending to confiscate your funds.

KittensKittens
Credit: a kitten photo hiding a $100M bitcoin transaction

You can also disguise secrets within text that appear harmless or inconspicuous.

Stegoseed is a tool to conceal a seed phrase within an ordinary-looking piece of content.

Hide codeHide code
Stegoseed: generate sentences encoding Bitcoin seed phrase content.

Here are some more innovative examples of using steganography in blockchains.

  • skin wallet: store your crypto wallet seed phrase securely & publicly in a tattoo
  • AudioStego: put your encrypted private key into an audio track
  • StegOnline: create an NFT to store your seed.

Public bounty

The following Ordinal NFT contains a seed phrase with some bitcoins. See if you can crack it and take the bounty. (Note, you must use the original picture here, not the compressed one below).

Frog smilingFrog smiling
Can you crack me?

Watch: Using modern advances in cryptography to enhance data privacy: Owen Vaughan

YouTube videoYouTube video

New to blockchain? Check out CoinGeek’s Blockchain for Beginners section, the ultimate resource guide to learn more about blockchain technology.





The article was first published here

Click to comment

Leave a Reply

Your email address will not be published. Required fields are marked *

You May Also Like

iPhone

10:29 a.m. ET, February 22, 2024 AT&T recently applied for a waiver to allow it to stop servicing traditional landlines in California From CNN’s...

Entertainmment

Everyone in Kyle Hausmann-Stokes’ compassionate feature My Dead Friend Zoe has suffered a loss. Merit (Sonequa Martin-Green), a nervous Afghanistan war veteran, is reeling...

Gaming

Video: Bandai Namco Reveals New Gameplay Footage Of Dragon Ball Z: Kakarot DLC 6  Nintendo Life Dragon Ball Z: Kakarot DLC Trailer Previews Goku’s Next...

Computing

Using 3D storage techniques, scientists at the University of Shanghai for Science and Technology developed an optical disk capable of accommodating 1.6 petabits of...