Generator liczb losowych ARC4

@frozen
public struct ARC4RandomNumberGenerator : SeedableRandomNumberGenerator

Implementacja SeedableRandomNumberGenerator przy użyciu ARC4.

ARC4 to szyfr strumieniowy, który generuje pseudolosowy strumień bajtów. Ten PRNG wykorzystuje ziarno jako klucz.

ARC4 opisano w Schneier, B., „Applied Cryptography: Protocols, Algorithms, and Source Code in C”, wydanie 2, 1996.

Pojedynczy generator nie jest bezpieczny dla wątków, ale różne generatory nie współdzielą stanu. Generowane losowo dane są wysokiej jakości, ale nie nadają się do zastosowań kryptograficznych.

  • Deklaracja

    public static var global: ARC4RandomNumberGenerator
  • Zainicjuj ARC4RandomNumberGenerator przy użyciu tablicy UInt8. Tablica musi mieć długość od 1 do 256 włącznie.

    Deklaracja

    public init(seed: [UInt8])
  • Deklaracja

    public mutating mutating func next() -> UInt64