ARC4RandomNumberGenerator

@frozen
public struct ARC4RandomNumberGenerator : SeedableRandomNumberGenerator

Uma implementação de SeedableRandomNumberGenerator usando ARC4.

ARC4 é uma cifra de fluxo que gera um fluxo pseudo-aleatório de bytes. Este PRNG usa a semente como sua chave.

ARC4 é descrito em Schneier, B., "Applied Cryptography: Protocols, Algorithms, and Source Code in C", 2ª Edição, 1996.

Um gerador individual não é seguro para thread, mas geradores distintos não compartilham o estado. Os dados aleatórios gerados são de alta qualidade, mas não são adequados para aplicações criptográficas.

  • Declaração

    public static var global: ARC4RandomNumberGenerator
  • Inicialize ARC4RandomNumberGenerator usando uma matriz de UInt8. A matriz deve ter um comprimento entre 1 e 256, inclusive.

    Declaração

    public init(seed: [UInt8])
  • Declaração

    public mutating mutating func next() -> UInt64