You are viewing a single comment's thread from:

RE: Today I learned that steemit.com can encrypt memos. This enables secure p2p messaging between all steemit accounts.

in #steemit7 years ago (edited)

Das ist wirklich interessant, vielen Dank für die Info! Ich habe mal gesucht und folgenden Beitrag von Dan aus dem letzten Jahr gefunden:

https://steemit.com/steem/@dantheman/how-to-encrypt-a-memo-when-transferring-steem

Ist also schon etwas länger möglich, wie es aussieht. Gut, dass wir das dann auch mal erfahren... :) Werde mir das bei Zeit mal im Detail anschauen, aber es scheint wirklich in Verbindung mit dem Private-Key mittels AES verschlüsselt zu werden. Super Sache!

Edit: Ganz vergessen ~ Glückwunsch zur 67 ;)

Sort:  

Ich verstehe es dennoch nicht so richtig, bin aber nicht so der Kryptografie-Crack.

Die Memos müssen symmetrisch verschlüsselt sein, weil sowohl Sender als auch Empfänger sie lesen können. Würde der Sender sie mit dem Public-Key vom Empfänger verschlüsseln, wäre das Memo beim Sender nicht mehr im Plain-Text lesbar (nach einem Reload), es sei denn steemit.com cashed/speichert die eingetippten Memos nochmal extra.

Du bist doch so ein Javascript-Profi. Schaue Dir mal bitte an, wie das Frontend aus dem verschlüsseltem Memo den entschlüsselten Text rendert. Eventuell werden wir daraus schlauer :-)

P.S.: Der "Reputation"-Score wird generell überbewertet ;-)

Ich bin da auch nicht so fit in Kryptografie, aber ich habe mir das im Steem-Python-Source mal kurz angeschaut und verstehe jetzt in etwa, wie das funktioniert...


  • Es gibt in einer Transaktion zwischen zwei Accounts immer ein "Shared Secret", das aus einem Private- und einem Public-Key gebildet wird. Unabhängig von der Richtung der Transaktion, also von A nach B oder B nach A, lässt sich derselbe Key anhand einer der beiden Private-Keys ermitteln.
  • Der Text nach dem "#" wird Base58-kodiert und kann somit mit einem "Base58-decode" von der Gegenstelle problemlos dekodiert werden. Der daraus resultierende Text enthält an bestimmten Stellen die Public-Keys der beiden Accounts (und noch ein paar weitere Zahlen zur Verbesserung der Gesamt-Verschlüsselung).
  • Beim Empfang wird anhand des eigenen Private-Keys und des Public-Keys des anderen Accounts das "Shared Secret" ermittelt und damit die eigentliche in AES-verschlüsselte Nachricht vom Ende des übrigen Strings entschlüsselt.

Zuerst hatte ich Bedenken, ob das überhaupt sicher sein kann und dachte, dass die Gegenstelle Zugriff auf den Private-Key des anderen hätte, aber jetzt macht es Sinn für mich. Was es nicht alles gibt hier :)

Ja, Reputation ist schon irgendwie überbewertet, aber trotzdem freut man sich darüber, die nächste "Stufe" erreicht zu haben. Was auch immer die Zahl bei einigen Accounts bedeuten mag... ^^

Vielen Dank, jetzt wo Du die Stichworte nanntest, habe ich es gefunden

aus

https://en.wikipedia.org/wiki/Public-key_cryptography