• Rémy Oudompheng's avatar
    crypto/des: faster permutation. · 441ef797
    Rémy Oudompheng authored
    This patch introduces specialized functions for initial
    and final permutations, and precomputes the output of the
    third permutation on the S-box elements.
    
    benchmark           old ns/op    new ns/op    delta
    BenchmarkEncrypt         3581         1226  -65.76%
    BenchmarkDecrypt         3590         1224  -65.91%
    
    benchmark            old MB/s     new MB/s  speedup
    BenchmarkEncrypt         2.23         6.52    2.92x
    BenchmarkDecrypt         2.23         6.53    2.93x
    
    R=golang-dev, rsc
    CC=golang-dev
    https://golang.org/cl/12072045
    441ef797
des_test.go 52.4 KB