Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > General > Decrypting

Reply
 
Thread Tools Search this Thread Display Modes
Old 17th August 2008, 15:34   #341  |  Link
Oopho2ei
Guest
 
Posts: n/a
I need the following patch to compile aacskeys on my my linux distribution (debian/lenny) with gcc (version 4.3.1):

Code:
diff -rupN aacskeys-0.3.0/src/aacs_ecdsa.cpp aacskeys-0.3.0_fixed/src/aacs_ecdsa.cpp
--- aacskeys-0.3.0/src/aacs_ecdsa.cpp   2008-07-24 07:06:58.000000000 +0200
+++ aacskeys-0.3.0_fixed/src/aacs_ecdsa.cpp     2008-08-17 16:09:28.000000000 +0200
@@ -2,6 +2,7 @@

 #include <cstdio>
 #include <string>
+#include <cstring>

 #include <openssl/bn.h>
 #include <openssl/evp.h>
diff -rupN aacskeys-0.3.0/src/aacskeys.cpp aacskeys-0.3.0_fixed/src/aacskeys.cpp
--- aacskeys-0.3.0/src/aacskeys.cpp     2008-07-24 08:31:29.000000000 +0200
+++ aacskeys-0.3.0_fixed/src/aacskeys.cpp       2008-08-17 16:10:36.000000000 +0200
@@ -35,6 +35,7 @@
 // general
 #include <cstdio>
 #include <string>
+#include <cstring>
 //#include <malloc.h>

 /* *** KenD00 start: Added include for variable argument list processing *** */
diff -rupN aacskeys-0.3.0/src/ioctl.cpp aacskeys-0.3.0_fixed/src/ioctl.cpp
--- aacskeys-0.3.0/src/ioctl.cpp        2008-07-24 07:06:58.000000000 +0200
+++ aacskeys-0.3.0_fixed/src/ioctl.cpp  2008-08-17 16:11:42.000000000 +0200
@@ -2,6 +2,7 @@

 #include <cstdio>
 #include <sstream>
+#include <cstring>
 #include <iomanip>


diff -rupN aacskeys-0.3.0/src/mmc.cpp aacskeys-0.3.0_fixed/src/mmc.cpp
--- aacskeys-0.3.0/src/mmc.cpp  2008-07-24 07:06:58.000000000 +0200
+++ aacskeys-0.3.0_fixed/src/mmc.cpp    2008-08-17 16:12:21.000000000 +0200
@@ -1,6 +1,7 @@
 #include "mmc.h"

 #include <string>
+#include <cstring>
 #include <cstdio>

 #define CDB_SIZE 16
Otherwise i get errors like:
Code:
aacs_ecdsa.cpp                                                                                                                                                         
src/aacs_ecdsa.cpp: In function ‘int aacs_calculate_bus_key(unsigned char*, unsigned char*, unsigned char*, unsigned char*)’:                                          
src/aacs_ecdsa.cpp:330: error: ‘memcpy’ was not declared in this scope
copy the file in the root directory of aacskeys and use patch -p1 < patchname.diff

Maybe you can fix this in the upcomping new release too
  Reply With Quote
Old 18th August 2008, 19:26   #342  |  Link
FoxDisc
Registered User
 
Join Date: Jan 2007
Posts: 274
Quote:
Originally Posted by gioowe View Post
Licensed players know their device keys position and corresponding subtrees (UV mask). We do not.
Why don't we know the UV mask? Doesn't each PK have a corresponding UV number? Doesn't each C-Value correspond to a single UV number? Once you find a PK that decrypts a C-Value, you know the matching UV. Or am I missing something?
FoxDisc is offline   Reply With Quote
Old 18th August 2008, 21:12   #343  |  Link
Peer van Heuen
SlySoft Team Member
 
Join Date: May 2007
Posts: 173
Quote:
Originally Posted by FoxDisc View Post
Why don't we know the UV mask? Doesn't each PK have a corresponding UV number? Doesn't each C-Value correspond to a single UV number? Once you find a PK that decrypts a C-Value, you know the matching UV. Or am I missing something?
No, you're not.
__________________
SlySoft Inc.
Peer van Heuen is offline   Reply With Quote
Old 18th August 2008, 22:03   #344  |  Link
Oopho2ei
Guest
 
Posts: n/a
Quote:
Originally Posted by FoxDisc View Post
Why don't we know the UV mask? Doesn't each PK have a corresponding UV number? Doesn't each C-Value correspond to a single UV number? Once you find a PK that decrypts a C-Value, you know the matching UV. Or am I missing something?
I think that is correct but we were actually talking about device keys and not processing keys. But because the processing key is derived from exactly one device key and that "path" is known you would get this position as well. If more people would help reverse engineering we wouldn't even have to bother about this and could instead use the stored values.
  Reply With Quote
Old 19th August 2008, 13:59   #345  |  Link
FoxDisc
Registered User
 
Join Date: Jan 2007
Posts: 274
Quote:
Originally Posted by Oopho2ei View Post
we were actually talking about device keys and not processing keys. But because the processing key is derived from exactly one device key and that "path" is known you would get this position as well.
Agreed. The reason I asked, was that I had assumed that each time a PK (or DK ) was identified that its matching uv number would be associated with it and stored somewhere. Then the correct c-value could be identified using the same basic procedures described in the AACS docs. You'd just find a c-value with a matching u number for your PK and a v-number that is not below the PK's v-number. (Clearly, you can start with either the list of c-values or the list of known PKs.)

Quote:
If more people would help reverse engineering we wouldn't even have to bother about this and could instead use the stored values.
I miss the excitement of the early days of discovery (not that I did anything other than watch and try to follow the technical details). With a smile, I have to blame Peer in part. He's really too good. I suspect the payoff for discovery is a lot less when Peer's in the lead.
FoxDisc is offline   Reply With Quote
Old 19th August 2008, 21:36   #346  |  Link
Peer van Heuen
SlySoft Team Member
 
Join Date: May 2007
Posts: 173
Quote:
Originally Posted by FoxDisc View Post
I miss the excitement of the early days of discovery (not that I did anything other than watch and try to follow the technical details). With a smile, I have to blame Peer in part. He's really too good. I suspect the payoff for discovery is a lot less when Peer's in the lead.
*blush*
__________________
SlySoft Inc.
Peer van Heuen is offline   Reply With Quote
Old 30th August 2008, 10:58   #347  |  Link
KenD00
Registered User
 
Join Date: Jan 2007
Location: Internet
Posts: 378
aacskeys 0.3.1

This new release is mainly a bugfix, i hope it fixes all the problems of the previous one. Beeing to lazy to write it a second time, i copy the changelog from the README:
Code:
- Fixed to run correctly under 64 bit
- Detects if the given mountpoint is a symlink and handles it correctly (Linux)
- Accepts mountpoints with a trailing "/" (Linux)
- Uses the Title Key file with the lowest number if VTKF000.AACS isn't present
  (HD-DVD Advanced Content)
- Displays version of MKB
- New option --no-preinval to disable invalidation of all AGIDs before
  requesting a new one
- Added missing includes to avoid compilation errors on some machines
  (thanks Oopho2ei)
- Lots of small fixes to avoid buffer overruns and null pointers
As usual, the archive contains precompiled binaries / libraries for linux (32 bit and 64 bit), windows and the source code, the zip and tar.gz have the same content.

Get them here:
aacskeys 0.3.1 (RapidShare, zip)
aacskeys 0.3.1 (SendSpace, zip)
aacskeys 0.3.1 (RapidShare, tar.gz)
aacskeys 0.3.1 (SendSpace, tar.gz)

KenD00 is offline   Reply With Quote
Old 30th August 2008, 15:04   #348  |  Link
Oopho2ei
Guest
 
Posts: n/a
Thanks a lot for the corrections.
  Reply With Quote
Old 20th September 2008, 19:10   #349  |  Link
KenD00
Registered User
 
Join Date: Jan 2007
Location: Internet
Posts: 378
aacskeys 0.3.5

This new release has one big new feature: Blu-Ray Recordable support (BDMV and BDAV type) .
From the changelog:
Code:
0.3.5: 2008-09-20
- Experimental Blu-Ray Recordable support (BDMV and BDAV)
- New option --pa-lba (currently this must be used with Blu-Ray Recordables if the Binding Nonce is not given on the command line)
- The Host Private Key and Host Certificate is now loaded from the external file HostKeyCertificate.txt
- Diplays more information about the drive and inserted disc
- Fixed an endianess problem
The whole recordable stuff isn't tested because i don't have any AACS protected recordings, so please test this feature and report back if something isn't working. The processing of recordables isn't fully automatic as for the other disc types because aacskeys hasn't an UDF parser integrated. This will maybe change in a later release if i find a suitable parser or have written an own one.

As usual, the archive contains precompiled binaries / libraries for linux (32 bit and 64 bit), windows and the source code, the zip and tar.gz have the same content.

Get them here:
aacskeys 0.3.5 (RapidShare, zip)
aacskeys 0.3.5 (RapidShare, tar.gz)
aacskeys 0.3.5 (SendSpace, zip)
aacskeys 0.3.5 (SendSpace, tar.gz)


If none of the automatic modes to retrieve the Volume ID / Binding Nonce works for you, try the following utilities to sniff them from the bus (works only under Windows and requires a licensed software player):

For Volume ID: DumpVID Package 0.31
DumpVID Package 0.31 (RapidShare)
DumpVID Package 0.31 (SendSpace)

For Binding Nonce: DumpBN 0.31 (from BackupBDAV 0.50)
DumpBN 0.31 (RapidShare)
DumpBN 0.31 (SendSpace)


Last edited by KenD00; 22nd September 2008 at 20:59. Reason: Added links to DumpVID and DumpBN
KenD00 is offline   Reply With Quote
Old 20th September 2008, 19:33   #350  |  Link
Adub
Fighting spam with a fish
 
Adub's Avatar
 
Join Date: Sep 2005
Posts: 2,699
Dude, you are awesome!! Always know that your work is appreciated!! Quick question, what MKB version are we up to now?
__________________
FAQs:Bond's AVC/H.264 FAQ
Site:Adubvideo
Adub is offline   Reply With Quote
Old 20th September 2008, 20:01   #351  |  Link
KenD00
Registered User
 
Join Date: Jan 2007
Location: Internet
Posts: 378
Thanks .

The situation is still unchanged, MKB up to version 7, Volume Id / Binding Nonce retrieval up to version 1 . Oh, if you can't get the Binding Nonce, google for dumpbn, this is based on DumpVID and does the same but for Binding Nonces.

KenD00 is offline   Reply With Quote
Old 20th September 2008, 23:51   #352  |  Link
KenD00
Registered User
 
Join Date: Jan 2007
Location: Internet
Posts: 378
This post contains a link which will always point to the latest aacskeys version.

Current version: 0.4.0c, released: 2009-08-30

Download links


Last edited by KenD00; 30th August 2009 at 17:21. Reason: Updated link
KenD00 is offline   Reply With Quote
Old 22nd September 2008, 08:30   #353  |  Link
CiNcH
Registered User
 
CiNcH's Avatar
 
Join Date: Jan 2004
Posts: 567
Quote:
The situation is still unchanged, MKB up to version 7, Volume Id / Binding Nonce retrieval up to version 1
May I ask which are the latest versions that can be found on BD nowadays?

BTW, I could not find anything about dumpbn.
__________________
Bye
CiNcH is offline   Reply With Quote
Old 22nd September 2008, 21:02   #354  |  Link
KenD00
Registered User
 
Join Date: Jan 2007
Location: Internet
Posts: 378
In the Slysoft forum there are reports about MKBv10.

You are right, google doesn't give anything useful about DumpBN, it's included in BackupBDAV, i have added download links for it (and DumpVID) in the upper release post.

KenD00 is offline   Reply With Quote
Old 26th September 2008, 16:54   #355  |  Link
TomZ
Registered User
 
Join Date: Oct 2007
Posts: 31
Quote:
Originally Posted by KenD00 View Post
[...]
If none of the automatic modes to retrieve the Volume ID / Binding Nonce works for you, try the following utilities to sniff them from the bus (works only under Windows and requires a licensed software player):
I'm sorry to tell you that but you're almost wrong KenD00. You can use DumpVID under linux with wine and it works. OK, it's not a native way under linux but it's the trick.
What i do is launching dumpVID.exe with wine, access the BRD with aackeys and the VID appears on the dumpVID console. Then you can re-use aacskey program or DumpHD...

Cheers

PS : thx a lot for your crazy work...
TomZ is offline   Reply With Quote
Old 27th September 2008, 03:11   #356  |  Link
KenD00
Registered User
 
Join Date: Jan 2007
Location: Internet
Posts: 378
Well, partially you are right, i have never tried to run it under wine, so that does work, thanks for the info.

But you are using a patched drive, so you can retrieve the Volume ID in a "not official" way, but this isn't the purpose of DumpVID. DumpVID is for the case where you can't get the Volume ID, this is for all drives which are > MKBv1 and are not patched. In that case you need a licensed software player, and, correct me if im wrong, i don't know of any licensed software player that runs under linux (native or under wine).

KenD00 is offline   Reply With Quote
Old 29th September 2008, 02:51   #357  |  Link
XAvAX
Registered User
 
Join Date: Nov 2006
Posts: 13
Hi, here's a compile fix for Gentoo:

in libaacskeys.make, there needs to be a substitution.

/usr/lib/jvm/java-6-sun/include/
must be replaced with
/etc/java-config-2/current-system-vm/include/ , and

/usr/lib/jvm/java-6-sun/include/linux/
must be replaced with
/etc/java-config-2/current-system-vm/include/linux/ as well

The best way to check if the host distribution is Gentoo is by checking for the file:
/etc/gentoo-release
XAvAX is offline   Reply With Quote
Old 29th September 2008, 13:39   #358  |  Link
TomZ
Registered User
 
Join Date: Oct 2007
Posts: 31
Quote:
Originally Posted by KenD00 View Post
But you are using a patched drive, so you can retrieve the Volume ID in a "not official" way, but this isn't the purpose of DumpVID. DumpVID is for the case where you can't get the Volume ID, this is for all drives which are > MKBv1 and are not patched. In that case you need a licensed software player, and, correct me if im wrong, i don't know of any licensed software player that runs under linux (native or under wine).

You're right... and you're wrong
You're right whent you say i don't need dumpVID as my drive is patched. But you're wrong when you say you need a commercial software. Here is the way to retrieve the VUK :

- you lanch dumpVID.exe with wine, something like that :
Code:
# wine dumpVID.exe d:
- in another console, you launch aacskeys
Code:
# aacskeys -v /media/bluray
- immediately, dumpVID will give you the VID
- then, you launch again aacskeys with the VID to get the VUK :
Code:
# aacskeys -v /media/bluray <VID>
and aacskeys will now give you the VUK !

'Z
TomZ is offline   Reply With Quote
Old 29th September 2008, 14:44   #359  |  Link
Oopho2ei
Guest
 
Posts: n/a
That's correct but aacskeys displays the volume id. So why would you need to run dumpVID.exe in the background?
  Reply With Quote
Old 29th September 2008, 15:10   #360  |  Link
TomZ
Registered User
 
Join Date: Oct 2007
Posts: 31
If your drive is not "firmware patched" i think aacskeys doesn't display the vid, am i wrong ?
I'm not at home at the moment but i'll check all of that this evening. All i can remember is before patching my drive i had to use dumpVID to get the VUK with aacskeys.
TomZ is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 00:27.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.