qrpff is a perl script created by Keith Winstein and Marc Horowitz of the MIT SIPB. It performs DeCSS in six or seven lines. The name itself is an encoding of "decss" in rot-13. In fact, two versions of qrpff exist: a short version (6 lines) and a fast version (7 lines). Both appear below. Short: #!/usr/bin/perl # 472-byte qrpff, Keith Winstein and Marc Horowitz <sipb-iap-dvd@mit. edu> # MPEG 2 PS VOB file -> descrambled output on stdout.

PropertyValue
dbpprop:abstract
  • qrpff is a perl script created by Keith Winstein and Marc Horowitz of the MIT SIPB. It performs DeCSS in six or seven lines. The name itself is an encoding of "decss" in rot-13. In fact, two versions of qrpff exist: a short version (6 lines) and a fast version (7 lines). Both appear below. Short: #!/usr/bin/perl # 472-byte qrpff, Keith Winstein and Marc Horowitz <sipb-iap-dvd@mit. edu> # MPEG 2 PS VOB file -> descrambled output on stdout. # usage: perl -I <k1>:<k2>:<k3>:<k4>:<k5> qrpff # where k1..k5 are the title key bytes in least to most-significant order s''$/=\2048;while(<>){G=29;R=142;if(&48){D=89;_=unqb24,qT,@ b=map{ord qB8,unqb8,qT,_^$a[--D]}@INC;s/... $/1$&/;Q=unqV,qb25,_;H=73;O=$b[4]<<9 |256|$b[3];Q=Q>>8^(P=&)<<17,O=O>>8^(E&)<<9,_=(map{U=_%16orE^=R^=110&;E ^=})[_]^(+=P+)for@a[128.. $#a]}print+qT,@a}';s/[D-HO-U_]/\$$&/g;s/q/pack+/g;eval Fast: #!/usr/bin/perl -w # 531-byte qrpff-fast, Keith Winstein and Marc Horowitz <sipb-iap-dvd@mit. edu> # MPEG 2 PS VOB file on stdin -> descrambled output on stdout # arguments: title key bytes in least to most-significant order $_='while(read+STDIN,$_,2048){$a=29;$b=73;$c=142;$t=255;@t=map{$_%16or$t^=$c^=($m=)&110;$t^=[$_%8]}(16..271);if(&48){$h =5;$_=unxb24,join"",@b=map{xB8,unxb8,chr($_^$a)}@ARGV;s/... $/1$&/;$ d=unxV,xb25,$_;$e=256|(ord$b)<<9|ord$b[3];$d=$d>>8^($f=$t&)<<17,$e=$e>>8^($t&)<<9,$_=$t[$_]^ (+=$f+)for@a[128.. $#a]}print+x"C*",@a}';s/x/pack+/g;eval The fast version is actually fast enough to decode a movie in real-time.
  • Qrpff est un script Perl créé par Keith Winstein et Marc Horowitz du MIT SIPB. Il éxecute une décryption CSS en six ou sept lignes de code. Le nom Qrpff est l'encryption de "decss" en ROT13. En fait, il existe deux version de Qrpff, une version courte (6 lignes) et une version rapide (7 lignes) toutes les deux sont données en dessous : Version courte: #!/usr/bin/perl # 472-byte qrpff, Keith Winstein and Marc Horowitz <sipb-iap-dvd@mit. edu> # MPEG 2 PS VOB file -> descrambled output on stdout. # usage: perl -I <k1>:<k2>:<k3>:<k4>:<k5> qrpff # where k1..k5 are the title key bytes in least to most-significant order s''$/=\2048;while(<>){G=29;R=142;if(&48){D=89;_=unqb24,qT,@ b=map{ord qB8,unqb8,qT,_^$a[--D]}@INC;s/... $/1$&/;Q=unqV,qb25,_;H=73;O=$b[4]<<9 |256|$b[3];Q=Q>>8^(P=&)<<17,O=O>>8^(E&)<<9,_=(map{U=_%16orE^=R^=110&;E ^=})[_]^(+=P+)for@a[128.. $#a]}print+qT,@a}';s/[D-HO-U_]/\$$&/g;s/q/pack+/g;eval Version rapide: #!/usr/bin/perl -w # 531-byte qrpff-fast, Keith Winstein and Marc Horowitz <sipb-iap-dvd@mit. edu> # MPEG 2 PS VOB file on stdin -> descrambled output on stdout # arguments: title key bytes in least to most-significant order $_='while(read+STDIN,$_,2048){$a=29;$b=73;$c=142;$t=255;@t=map{$_%16or$t^=$c^=($m=)&110;$t^=[$_%8]}(16..271);if(&48){$h =5;$_=unxb24,join"",@b=map{xB8,unxb8,chr($_^$a)}@ARGV;s/... $/1$&/;$ d=unxV,xb25,$_;$e=256|(ord$b)<<9|ord$b[3];$d=$d>>8^($f=$t&)<<17,$e=$e>>8^($t&)<<9,$_=$t[$_]^ (+=$f+)for@a[128.. $#a]}print+x"C*",@a}';s/x/pack+/g;eval La version rapide est assez rapide pour lire un film.
  • qrpffはMIT SIPBのKeith WinsteinとMarc Horowitzによって作られたPerlスクリプトである。 このスクリプトは6行もしくは7行のコードでDeCSSと同じ動作をする。 この名前は "decss"をROT13変換したものである。 事実上二つのバージョンが存在する:短いバージョン(6行)と初期バージョン(7行)。両方を下に示す。 短いバージョン: #!/usr/bin/perl # 472-byte qrpff, Keith Winstein and Marc Horowitz <sipb-iap-dvd@mit. edu> # MPEG 2 PS VOB file -> descrambled output on stdout. # usage: perl -I <k1>:<k2>:<k3>:<k4>:<k5> qrpff # where k1..k5 are the title key bytes in least to most-significant order s''$/=\2048;while(<>){G=29;R=142;if(&48){D=89;_=unqb24,qT,@ b=map{ord qB8,unqb8,qT,_^$a[--D]}@INC;s/... $/1$&/;Q=unqV,qb25,_;H=73;O=$b[4]<<9 |256|$b[3];Q=Q>>8^(P=&)<<17,O=O>>8^(E&)<<9,_=(map{U=_%16orE^=R^=110&;E ^=})[_]^(+=P+)for@a[128.. $#a]}print+qT,@a}';s/[D-HO-U_]/\$$&/g;s/q/pack+/g;eval 初期バージョン: #!/usr/bin/perl -w # 531-byte qrpff-fast, Keith Winstein and Marc Horowitz <sipb-iap-dvd@mit. edu> # MPEG 2 PS VOB file on stdin -> descrambled output on stdout # arguments: title key bytes in least to most-significant order $_='while(read+STDIN,$_,2048){$a=29;$b=73;$c=142;$t=255;@t=map{$_%16or$t^=$c^=($m=)&110;$t^=[$_%8]}(16..271);if(&48){$h =5;$_=unxb24,join"",@b=map{xB8,unxb8,chr($_^$a)}@ARGV;s/... $/1$&/;$ d=unxV,xb25,$_;$e=256|(ord$b)<<9|ord$b[3];$d=$d>>8^($f=$t&)<<17,$e=$e>>8^($t&)<<9,$_=$t[$_]^ (+=$f+)for@a[128.. $#a]}print+x"C*",@a}';s/x/pack+/g;eval 実際には初期バージョンでも実時間内にデコードするには十分な速さである。
dbpprop:hasPhotoCollection
dbpprop:reference
rdfs:comment
  • qrpff is a perl script created by Keith Winstein and Marc Horowitz of the MIT SIPB. It performs DeCSS in six or seven lines. The name itself is an encoding of "decss" in rot-13. In fact, two versions of qrpff exist: a short version (6 lines) and a fast version (7 lines). Both appear below. Short: #!/usr/bin/perl # 472-byte qrpff, Keith Winstein and Marc Horowitz <sipb-iap-dvd@mit. edu> # MPEG 2 PS VOB file -> descrambled output on stdout.
  • Qrpff est un script Perl créé par Keith Winstein et Marc Horowitz du MIT SIPB. Il éxecute une décryption CSS en six ou sept lignes de code. Le nom Qrpff est l'encryption de "decss" en ROT13. En fait, il existe deux version de Qrpff, une version courte (6 lignes) et une version rapide (7 lignes) toutes les deux sont données en dessous : Version courte: #!/usr/bin/perl # 472-byte qrpff, Keith Winstein and Marc Horowitz <sipb-iap-dvd@mit.
rdfs:label
  • Qrpff
  • Qrpff
  • Qrpff
owl:sameAs
skos:subject
foaf:page