Samourai Wallet Introduces Bitcoin via SMS Text Message for Censorship Resistance

in #samourai7 years ago


T Dev D of Samourai Wallet explained to News.Bitcoin.com: “Pony Direct can be used to forward bitcoin transactions via SMS even when internet connections are blocked or shut down. Simply using the app to send a transaction via SMS to any cooperating and internet-connected Android device will effectively route around any internet censorship being practiced where the sender is located.”

News.Bitcoin.com asked how SMS within the Samourai Wallet operates. T Dev D clarified: “The issue is that as SMS can only contain up to 160 characters, a way must be found to send as many SMS as possible to communicate the bitcoin transaction to the party capable of broadcasting it on the network. The first SMS in the sequence contains info on the total number of SMS in the series, the hash ID that must be matched at the end, a batch ID, a sequencing number, and a portion of the actual transaction hex. The following SMS contain a sequencing number, the batch ID, and more transaction hex data. Once the receiving device has accepted the expected number of SMS for a same batch from the same incoming number, the transaction data is extracted from each message and the entire transaction is re-assembled and pushed out to the bitcoin network.”

Pavol Rusnak
Pony Direct is “part of ongoing R&D into alternative broadcasting methods to enhance censorship resistance,” Samourai tweeted. Censorship resistance is a serious goal for the uber-privacy wallet project; its team bills themselves as “privacy activists who have dedicated our lives to creating the software that Silicon Valley will never build, the regulators will never allow, and the VC’s will never invest in. We build the software that Bitcoin deserves.”

He set up a virtual number which allowed him a webhook, and pointed it at his Flask server, which in turn consumes and forwards messages. The only trouble was limiting messages to 160 characters. The message is then linked together in a chain or series; he used an Insight service API to push the transaction and used both hexadecimal format and base64 format. Readers are encouraged to see the experiment for themselves.

Now there’s a bitcoin wallet that can do all that as well.