]> cvs.zerfleddert.de Git - proxmark3-svn/commitdiff
CHG: testing a prng_successor_one method
authoriceman1001 <iceman@iuse.se>
Tue, 16 Feb 2016 20:41:10 +0000 (21:41 +0100)
committericeman1001 <iceman@iuse.se>
Tue, 16 Feb 2016 20:41:10 +0000 (21:41 +0100)
armsrc/crapto1.h
armsrc/crypto1.c

index 9262b956c29c2723e113ca3633223d4761222472..7ea6fa28f5b7af57ec7caa0c31fd912833a246f4 100644 (file)
@@ -32,6 +32,7 @@ uint8_t crypto1_bit(struct Crypto1State*, uint8_t, int);
 uint8_t crypto1_byte(struct Crypto1State*, uint8_t, int);
 uint32_t crypto1_word(struct Crypto1State*, uint32_t, int);
 uint32_t prng_successor(uint32_t x, uint32_t n);
 uint8_t crypto1_byte(struct Crypto1State*, uint8_t, int);
 uint32_t crypto1_word(struct Crypto1State*, uint32_t, int);
 uint32_t prng_successor(uint32_t x, uint32_t n);
+uint32_t prng_successor_one(uint32_t x);
 
 struct Crypto1State* lfsr_recovery32(uint32_t ks2, uint32_t in);
 struct Crypto1State* lfsr_recovery64(uint32_t ks2, uint32_t ks3);
 
 struct Crypto1State* lfsr_recovery32(uint32_t ks2, uint32_t in);
 struct Crypto1State* lfsr_recovery64(uint32_t ks2, uint32_t ks3);
index 98d38b2bf2189ad4a65047e263669e6a67b53c84..993c05e7f095795115c1697bb90eb2b8c80f7c02 100644 (file)
@@ -141,3 +141,12 @@ uint32_t prng_successor(uint32_t x, uint32_t n)
 
        return SWAPENDIAN(x);
 }
 
        return SWAPENDIAN(x);
 }
+
+uint32_t prng_successor_one(uint32_t x)
+{
+       SWAPENDIAN(x);
+
+       x = x >> 1 | (x >> 16 ^ x >> 18 ^ x >> 19 ^ x >> 21) << 31;
+
+       return SWAPENDIAN(x);
+}
\ No newline at end of file
Impressum, Datenschutz