Bitcoin Forum
May 04, 2024, 11:30:21 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Private Key/Public Key/Bitcoin Adresse  (Read 2395 times)
Wiss (OP)
Jr. Member
*
Offline Offline

Activity: 68
Merit: 1


View Profile
May 26, 2016, 04:01:09 PM
 #1

Hallo,

Ich habe eine Verständnisfrage zu den Adressen. Warum werden für Bitcoin 3 Adressen benötigt?

Mir ist klar dass es einen Public Key gibt den ich weitergeben kann und mit Hilfe dessen meine Nachrichten verfiziert werden können.
Den Private Key benötige ich um meine Nachrichten zu verschlüsseln.
Das Schlüsselpaar wird nach diesem Algo generiert: https://en.bitcoin.it/wiki/Elliptic_Curve_Digital_Signature_Algorithm.

Aber warum wird dann noch ein weiterer Schritt durchgeführt? Warum verwende ich nicht einfach meinen Public Key um die send to Adresse zu definiere?
Und wie wird dieser Schlüssel generiert (nicht technisch sondern fachlich wäre für mich interessant warum ist hier eine weiter Transformation notwendig ist)?


Thx
1714865421
Hero Member
*
Offline Offline

Posts: 1714865421

View Profile Personal Message (Offline)

Ignore
1714865421
Reply with quote  #2

1714865421
Report to moderator
1714865421
Hero Member
*
Offline Offline

Posts: 1714865421

View Profile Personal Message (Offline)

Ignore
1714865421
Reply with quote  #2

1714865421
Report to moderator
1714865421
Hero Member
*
Offline Offline

Posts: 1714865421

View Profile Personal Message (Offline)

Ignore
1714865421
Reply with quote  #2

1714865421
Report to moderator
The forum was founded in 2009 by Satoshi and Sirius. It replaced a SourceForge forum.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714865421
Hero Member
*
Offline Offline

Posts: 1714865421

View Profile Personal Message (Offline)

Ignore
1714865421
Reply with quote  #2

1714865421
Report to moderator
1714865421
Hero Member
*
Offline Offline

Posts: 1714865421

View Profile Personal Message (Offline)

Ignore
1714865421
Reply with quote  #2

1714865421
Report to moderator
1714865421
Hero Member
*
Offline Offline

Posts: 1714865421

View Profile Personal Message (Offline)

Ignore
1714865421
Reply with quote  #2

1714865421
Report to moderator
BitCharlie
Sr. Member
****
Offline Offline

Activity: 424
Merit: 343


View Profile
May 26, 2016, 04:09:24 PM
 #2

Was genau meinst Du mit Nachrichten?

Wenn es um das senden und empfangen von Geld geht gibt es nur den Public und Private Key.
Der Public Key ist Deine Bitcoin Adresse auf dem Du Geld empfangen kannst und das Saldo prüfen kannst.
Wiss (OP)
Jr. Member
*
Offline Offline

Activity: 68
Merit: 1


View Profile
May 26, 2016, 04:27:22 PM
 #3

Hier steht:
A Bitcoin address is a 160-bit hash of the public portion of a public/private ECDSA keypair.
https://en.bitcoin.it/wiki/Technical_background_of_version_1_Bitcoin_addresses
Das heißt meine Bitcoin Adresse ist ein Hash Code der auf Basis des Public Keys generiert wird (eine verkürzte/vereinfachte Darstellung des öffentlichen Schlüssels)

Warum wird diese Transformation vom Public Key durchgeführt?
2 - Perform SHA-256 hashing on the public key
3 - Perform RIPEMD-160 hashing on the result of SHA-256
4 - Add version byte in front of RIPEMD-160 hash (0x00 for Main Network)
5 - Perform SHA-256 hash on the extended RIPEMD-160 result
6 - Perform SHA-256 hash on the result of the previous SHA-256 hash
7 - Take the first 4 bytes of the second SHA-256 hash. This is the address checksum
8 - Add the 4 checksum bytes from stage 7 at the end of extended RIPEMD-160 hash from stage 4. This is the 25-byte binary Bitcoin Address.
9 - Convert the result from a byte string into a base58 string using Base58Check encoding. This is the most commonly used Bitcoin Address format

thx
Wiss (OP)
Jr. Member
*
Offline Offline

Activity: 68
Merit: 1


View Profile
May 26, 2016, 05:10:20 PM
 #4

habe nun ein wenig weiter recherchiert - ist es richtig dass...

die Bitcoin Adresse eigentlich nicht notwendig wäre - das ganze würde auch allein mit dem Public Key funktionieren.
Die Bitcoin Adresse dient nur dazu:
1.) um sicherzustellen dass es eine gültige Adresse ist (sie wird zuerst in einem Hash transformiert anschließend wird eine Checksum eingetragen)
damit sind Tippfehler oder ähnliches ausgeschlossen
das beudeutet aber wenn man "zufällig" eine gültige erwischt kann man dennoch an eine nicht vorhandene Adresse Bitcoins übermitteln  - diese sind aber für immer verloren...

2.) um die lesbarkeit zu verbessen
der Hash wird wird durch eine Base58Check durchgejagt damit 0,O,I und i entfernt werden.

Ist dies korrekt - oder fehlt hier noch etwas?


trasla
Hero Member
*****
Offline Offline

Activity: 707
Merit: 500



View Profile
May 31, 2016, 06:47:45 AM
 #5

Ein Punkt ist noch, dass in einer eingehenden Transaktion nur die Bitcoin Adresse steht. Der public key wird erst öffentlich, wenn man eine Transaktion macht um die btc auszugeben.
Das bedeutet selbst falls sich irgendwann rausstellen sollte, dass es doch möglich ist, vom public key zum private key zu kommen (gefundene Fehler in der krypto, Quantum computing) wären Bitcoin (relativ) sicher, solange man jede Adresse nur einmal verwendet und die hash Algorithmen intakt sind.

Das ist aber momentan für die Praxis nicht relevant.
Pages: [1]
  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!