Scrypt

Finden Sie dieser Artikel interessant?

Scrypt Algorighm logo

Scrypt ist die Verschlüsselungsmethode, die ein großes Speichervolumen verwendet und zur Auswahl viel Zeit benötigt. Der Scrypt-Algorithmus ist für das Kryptowährung-Mining implementiert, was es für die spezialisierten ASIC-Miner komplizierter macht.

Die Scrypt-Münzen unterscheiden sich von Bitcoin, da dieser den SHA-256-Algorithmus verwendet. Im Gegensatz zur verschlüsselten Kryptowährung können Bitcoin und andere Währungen dieses Algorithmus leicht mit ASIC (den Geräten, die speziell für die Lösung der Mining-Aufgaben entwickelt wurden) ermittelt werden. Dies führt häufig zu einem negativen Feedback der Schöpfer der Verschlüsselungs-Kryptowährungen, da es den Bergarbeitern mit großen Ressourcen einen Vorteil verschafft und die Dezentralisierung verletzt.

Bitcoin, das Scrypt nicht verwendet, ist nur ein Beispiel. Aus diesem Grund erfreuen sich die Scrypt-Münzen einer Beliebtheit bei Bergleuten, die zum Bergbau Prozessoren (CPU) oder Videokarten (GPU) verwenden. Sehen wir uns den Verschlüsselungsalgorithmus, seine Besonderheiten und Vorteile an.

Inhaltsverzeichnis

Wie funktioniert Scrypt?

Scrypt algorithm

Bevor wir die Scrypt-Algorithmus-Münzen im Zusammenhang mit dem Bergbau betrachten, werfen wir einen Blick auf das System selbst.

Der Verschlüsselungsalgorithmus wurde von Colin Percival als Krypto-Schutz des Online-Dienstes zur Aufbewahrung der Sicherungskopien eines UNIX-ähnlichen Betriebssystems entwickelt. Das Arbeitsprinzip des Verschlüsselungsalgorithmus besteht darin, dass es die Auswahl von Optionen zur Lösung einer kryptographischen Aufgabe künstlich erschwert, indem es mit „Rauschen“ gefüllt wird. Dieses Rauschen ist zufällig erzeugte Zahlen, auf die sich der Verschlüsselungsalgorithmus bezieht, wodurch die Arbeitszeit erhöht wird.

Wenn der Benutzer den Schlüssel des Benutzers überprüft, ist diese Verzögerung nahezu unsichtbar. Wenn ein Betrüger jedoch versucht, den Kern mithilfe der erschöpfenden Suchmethode aufzuschlüsseln, wird dies durch Scrypt kompliziert: Alle Vorgänge insgesamt erfordern viel Zeit.

Für jede verschlüsselte Münze bedeutet dies, dass für den Abbau eine große Anzahl von Teilnehmern im Netzwerk erforderlich ist und jeder von ihnen einen Teil der Arbeit erledigen muss.

Scrypt Mining

Bei der Auswahl einer Kryptowährung mit dem Verschlüsselungsalgorithmus ist es auch sehr wichtig zu wissen, wo sie zu finden ist.

Im Gegensatz zu SHA-256 benötigt Scrypt Mining weniger Ressourcen, wodurch die Währungen, die den Scrypt-Algorithmus verwenden, mit verschiedenen Tools erfolgreich abgebaut werden können. Dies sind der Scrypt-Pool und der Scrypt-Miner-Prozessor sowie die GPU und sogar der Scrypt-ASIC-Miner: Die Hersteller von ASIC-Geräten suchen auch nach Möglichkeiten, die Mining-Verschlüsselung des Algorithmus zu „öffnen“ und die Scrypt-Funktion zu implementieren.

Wenn ein Neuling beginnt, den Verschlüsselungsalgorithmus zu studieren, wird die Hauptfrage gestellt – was für das Mining verwendet werden soll. Der Hauptparameter bei der Auswahl wird die Verschlüsselungs-Hash-Rate, d. H. Die von der Ausrüstung geforderte Leistung, wodurch die Kryptowährung ermittelt werden kann.

Um den Scrypt-Hash zu berechnen, d. H. Genau diese Lösung zu finden, die das Erstellen eines neuen Blocks in der Blockchain ermöglicht, empfehlen die erfahrenen Bergleute, GPU zu verwenden. Grafikkarten bieten mehr Leistung als Prozessoren und sind auch bei der Durchführung einer Operation besser. Scrypt Miner AMD wird am besten passen: Diese Grafikkarten bieten eine höhere Leistung als Nvidia, und das Zusammenstellen einer Farm von ihnen ist billiger. Scrypt Mining erfordert auch größere Speichervolumina.

Die Hersteller von ASIC-Bergarbeitern stehen übrigens auch nicht still. Heute kann ASIC den Scrypt-Algorithmus bewältigen, aber die Entwickler setzen diesen technologischen Krieg fort, um dem Miner, der den Scrypt-Algorithmus ausgewählt hat, mit der weniger produktiven Ausrüstung die Möglichkeit zu geben, Minen durchzuführen.

Zum Starten des Scrypt-Solo-Minings sind jedoch ziemlich große Ressourcen erforderlich. Ein alternativer Weg sind die Verschlüsselungspools. Dies sind die Gemeinschaften, in denen Sie die Kraft Ihrer Ausrüstung zur Verfügung stellen, um sich den Streitkräften anzuschließen. Ein solcher Ansatz liefert ein besseres Ergebnis als das Solo-Mining, aber die Belohnung wird geringer.

Um die besten Pools für das Scrypt-Mining der Kryptowährungen zu finden, müssen Sie deren Ausrichtung beachten. Es gibt Pools, die an nur eine Münze angepasst sind, und es gibt mehrere, in denen eine Währung von einer Kryptowährung zur anderen wechseln kann. In Bezug auf die Stabilität des Einkommens gehören die besten Verschlüsselungspools zur ersten Kategorie.

Kryptowährung bei Scrypt

Die wichtigste Frage, nachdem Sie verstanden haben, was der Scrypt-Algorithmus ist, lautet: Die erste Kryptowährung, die den Verschlüsselungsalgorithmus verwendet, ist Litecoin. Alle Gabeln von Litecoin funktionieren auch darauf. Zum Beispiel liegt die geringere Beliebtheit beim Algorithmus der gescannten Münze Dogecoin.

Neben anderen Kryptowährungen, die den Verschlüsselungsalgorithmus verwenden, gibt es die Münzen ProsperCoin, CashCoin, MonaCoin, Mooncoin und viele andere.

Algorithmus

Der Algorithmus enthält die folgenden Parameter:

  • Passphrase – Die Zeichenkette, die gehasht werden soll.
  • Salt – Eine Zeichenfolge, die den Hash zum Schutz vor Rainbow Table-Angriffen ändert
  • N – CPU-/Speicherkostenparameter.
  • p – Parallelisierungsparameter; eine positive ganze Zahl p ≤ (232− 1) * hLen/MFLen.
  • dkLen – Beabsichtigte Ausgabelänge in Bytes des abgeleiteten Schlüssels; eine positive ganze Zahl dkLen ≤ (232− 1) * hLen.
  • r – Der Blockgröße-Parameter, mit dem die Größe und die Leistung des sequenziellen Speichers genau eingestellt werden. 8 wird häufig verwendet.
  • hLen – Die Länge der Hash-Funktion in Oktetten (32 für SHA256).
  • MFlen – Die Länge der Ausgabe der Mischfunktion in Oktetten (SMix unten). In RFC7914 als r * 128 definiert.

Function scrypt

Inputs: Passphrase: Bytes string of characters to be hashed Salt: Bytes random salt CostFactor (N): Integer CPU/memory cost parameter BlockSizeFactor (r): Integer blocksize parameter (8 is commonly used) ParallelizationFactor (p): Integer Parallelization parameter. (1..232-1 * hLen/MFlen) DesiredKeyLen: Integer Desired key length in bytes Output: DerivedKey: Bytes array of bytes, DesiredKeyLen long  Step 1. Generate expensive salt blockSize ← 128*BlockSizeFactor //Length (in bytes) of the SMix mixing function output (e.g. 128*8 = 1024 bytes)  Use PBKDF2 to generate initial 128*BlockSizeFactor*p bytes of data (e.g. 128*8*3 = 3072 bytes) Treat the result as an array of p elements, each entry being blocksize bytes (e.g. 3 elements, each 1024 bytes) [B0...Bp−1] ← HMAC-SHA256(Passphrase, Salt, 1, blockSize*ParallelizationFactor)  Mix each block in B 2CostFactor times using ROMix function (each block can be mixed in parallel) for i ← 0 to p-1 do Bi ← ROMix(Bi, 2CostFactor)  All the elements of B is our new "expensive" salt expensiveSalt ← B0∥B1∥B2∥ ... ∥Bp-1//where ∥ is concatenation  Step 2. Use PBKDF2 to generate the desired number of bytes, but using the expensive salt we just generated return PBKDF2HMAC-SHA256(Passphrase, expensiveSalt, 1, DesiredKeyLen); 
Function ROMix(Block, Iterations)  Create Iterations copies of X X ← Block for i ← 0 to Iterations−1 do Vi ← X X ← BlockMix(X)  for i ← 0 to Iterations−1 do //Convert first 8-bytes of the last 64-byte block of X to a UInt64, assuming little endian (Intel) format j ← Integerify(X) mod N  X ← BlockMix(X xor Vj)  return X 

Dabei ist Integerify eine bijektive Funktion von {0, 1} k </ sup> bis {0, …, 2 k </ sup> – 1}.

Function BlockMix(B):  The block B is r 128-byte chunks (which is equivalent of 2r 64-byte chunks) r ← Length(B) / 128;  Treat B as an array of 2r 64-byte chucks [B0...B2r-1] ← B  X ← B2r−1for i ← 0 to 2r−1 do X ← Salsa20/8(X xor Bi) //Salsa20/8 hashes from 64-bytes to 64-bytes Yi ← X  return ← Y0∥Y2∥...∥Y2r−2 ∥ Y1∥Y3∥...∥Y2r−1

Salsa20 / 8 ist die 8-Runden-Version von Salsa20.

Siehe auch auf BitcoinWiki

Ressourcen