123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206 |
- - created
-
- - released 0.0.1
-
- - simplified s, A, B
-
- - released 0.0.2
-
- - simplified nxt=
-
- - released 0.0.3
-
- - removed commented code
- - code formatting
-
- - released 0.0.4
-
- - kk now unsigned char
- - removed 64 bit ints
-
- - released 0.0.5
-
- - created decrypt_2ts
-
- - released 0.0.6
-
- - renamed files
- - created decrypt_many_ts, removed others
- - external interface has 2 functions only: set_cws() and decrypt_many_ts()
- - reformatted code
- - reimplemented s12,s34,s56,s7
- - unsigned char become int for table optimization
-
- - released 0.0.7
-
- - optional icc compiler
- - kk now 0..55
- - decrypt_many_ts really works (no parallelism yet)
- - added get_cws() to interface
- - created stream.c
- - created key_schedule_stream, using iA[] and iB[]
-
- - released 0.0.8
-
- - decrypt_many_ts() makes a group, sorts the packets, processes them
- - preliminar stream_cypher_group() created
- - parallel computing activated
- - huge speed increase (+500%) thanks to stream_cypher_group()
-
- - released 0.0.9
-
- - block_cypher_group() created (no parallelism yet)
-
- - released 0.0.10
-
- - block_cypher_group() has 56 simple iterations
- - block_cypher_group() doesn't shift registers anymore
-
- - released 0.0.11
-
- - some parallelization on block_cypher_group()
-
- - released 0.0.12
-
- - better parallelization of block_cypher_group()
-
- - released 0.0.13
-
- - block_cypher() was still called by error when N=23
- - speed is now 109Mbit/s on AMD XP2000+ CPU
-
- - released 0.0.14
-
- - stream_cypher_group() has a init and normal variant
- - A[0]-A[9] instead of A[1]-A[10], same for B
- - implemented virtual shift of A and B
- - speed is now 117Mbit/s on AMD XP2000+ CPU
-
- - released 0.0.15
-
- - better optimization of E and F in the stream cypher
- - speed is now 119Mbit/s on AMD XP2000+ CPU
-
- - released 0.0.16
-
- - removed some debug overhead
- - speed is now 120Mbit/s on AMD XP2000+ CPU
-
- - released 0.0.17
-
- - don't move packets with residue anymore
- - speed is now 123Mbit/s on AMD XP2000+ CPU
-
- - released 0.0.18
-
- - solved alignment problems
- - search groupable packets even beyond ungroupable ones
- (more speed in some real world cases)
- - created decrypt_many_ts2(), useful with circular buffers
-
- - released 0.0.19
-
- - removed old code
-
- - released 0.0.20
-
- - partially converted code to size-independent group
- - icc doesn't work with optimizations on
-
- - released 0.1.1
-
- - merge loops on block_decypher (speed++ gcc, speed-- icc)
- - transposition are now functions (speed-- icc)
- - icc works again (compiler bug work around?)
-
- - released 0.1.2
-
- - better use of COPY8 &co
- - better flags for gcc
- - removed old code
-
- - released 0.1.3
-
- - int and not char in block cypher (speed++++++ gcc, speed-- icc)
-
- - released 0.1.4
-
- - group abstraction finally implemented
- - support for group width 64
-
- - released 0.1.5
-
- - group 64 mmx implemented (speed++ gcc)
-
- - released 0.1.6
-
- - more parallelism in block cypher (speed++ gcc)
- - transposition before and after block (disabled because of no speed gain yet)
-
- - released 0.1.7
-
- - more parallelism in block cypher (speed++ gcc)
- - transposition before and after block enabled (speed++ gcc)
- - gcc options (unrolled 500) speed gcc++
-
- - released 0.1.8
-
- - reworked FFN_ALL_* constants (speed++++ gcc)
-
- - released 0.1.9
-
- - transposition in block as inlined functions
- - group abstraction working well
-
- - released 0.1.10
-
- - group 128 sse implemented, but batch is 64 mmx (not faster than group 64 mmx)
-
- - released 0.1.11
-
- - lot of code polishing and dead code elimination
- - better and more debug output
-
- - released 0.1.12
-
- - name change: FFdecsa
-
- - released 0.2.0
-
- - separated test cases
- - corrected all group_modes (now called parallel_modes)
- - parallel 128 8 char implemented
- - parallel 64 long implemented
- - parallel 128 2 long implemented
- - parallel 128 2 mmx implemented (incredibly slow, the compiler is very confused)
- - parallel 128 16 charA implemented (very slow compilation)
- - parallel 128 16 char implemented
- - renamed softcsa* to FFdecsa*
-
- - released 0.2.1
-
- - new external interface (based on ranges)
-
- - released 0.2.2
-
- - can be compiled with g++ too
- - using g++ the code is 3% faster!
- - external interface: function name changing and new functions
- - a group of ranges is now called a cluster
- - renamed autogenerated files
-
- - released 0.2.3
-
- - written docs
- - removed unneeded files
- - added Copyright and license notes
- - reworked "logic"
-
- - released 0.3.0
-
- - Makefile reworked
- - misc fixes
- - added vdr patch
-
- - released 1.0.0 (public release)
|