• Home
  • Downloads
  • EBOOT Fixes
  • Forums
  • New Posts
  • Register
    • Welcome, Register Now! 
    • Premium VIP Membership
    • PS3 Sticky
      • PS3 CFW & MFW
      • PS3 Debug Firmware
      • PS3 Decrypted PSN Links for CFW
      • PS3 Downloads
      • PS3 EBOOT.BIN Original File Links
      • PS3 Firmware
      • PS3 Game Releases List
      • PS3 Guides & Tutorials
      • PS3 Hacking Guides and Tutorials
      • PS3 Hacks & JailBreak
      • PS3 Help & Support
      • PS3 JailBreak Game Compatibility List
      • PS3 JB2 / True Blue (TB) Game Links
      • PS3 multiMAN Updates
      • PS3 Resources
      • PS3 Reviews
      • PS3 Save Files Repository
      • PS3 Themes
      • PS3 Trophies List
      • PS3 Videos
      • PS Vita Trophies List
    • Quick Links
      • Affiliates
      • Contact Us
      • FAQ
      • Post News
      • Site Rules
      • Tag Cloud
 

PS3 Full 3.40 SDK Out, Sony PlayStation 3 SDK Leaked by Duplex!

Category: PS3 Hacks & JailBreak  By: PS3 News - (ps3news.com)
Tags: ps3 full 3.40 sdk sony playstation 3 sdk ps3 sdk leaked ps3 sdk duplex

90w ago - Earlier today we reported on the PS3 Debug / Test Firmware 3.70 update being leaked, and now the entire PS3 3.40 SDK has been leaked by PlayStation 3 scene group Duplex.

This news comes a few weeks after the recent Sony PS3 SDK GCC Cell OS LV2 Toolchain Sources leak, and for those following... previously the PS3 SDK 3.41 Toolchain & RAF Compiler, a Differences Comparison, and the PS3 SDK 1.92 was leaked alongside a guide on how to set it up.

According to the PS3 NFO, the official release name is PS3.Full.3.40.SDK.PS3-DUPLEX (including ProDGforPlayStation3v340.1.0.exe and TargetManagerForPlayStation3v340.1.0.exe which no longer require keys) and it's 2.53GB in size... some download links and notes can be found below, as follows:

Here is the FULL 3.40 SDK by Sony. It includes all the tools and samples missing in the previously leaked SDK which was only 50mb in size ... Release Name: PS3.Full.3.40.SDK.PS3-DUPLEX Size: 2.53GB

           - D U P L E X -   ▄▄▄
                              ███▄                       ■
 ■▄▄▄▄▄▄▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ Ì██▀ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ █▄▄ ▀▀▀▀▀▀▀▀▀▄▄▄▄▄▄▄■
         ▒▓████▀▀██▄  ░▒████  Ì█�▒▓███▀▀██▄Ì██   ▒▓███▀▀██▄ ███▄    ▄█▄
         ▓█████  ███▄ ▒▓████  Ì█�▓████  Ì██Ì██   ▓████  ███ Ì▓██�  ▓██
         ▓█████  Ì███ ▓█████  Ì█�▓████  Ì██Ì██   ▓████      Ì▓██�  Ì██�
         ██████  Ì███ ██████  Ì█�█████ Ì██�Ì██   █████       ▀███  ██▀
         ██████  Ì███ ▓█████  Ì█�█████  ▀ ▄███   ▓████▀        ███▀█
         ██████  Ì███ ██████  Ì█�█████   ▓████   ▀▀Ì██       ▄███  Ì█▄
         ██████  ████ ██████  ██�█████   █████  ███Ì██  ███ ▓███�  ██▓
         ▀█████▄▄███▀ ▀█████▄▄██�█████   █████▄▄███Ì██▄▄███ Ì▓███ ▀█▀
 ■▀▀▀▀▀▀▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄  ████▀ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ▀██▀▀▄▄▄▄▄▀▀▀▀▀▀▀■
           ▓                     ▀▀▀▀                              ▀▓▀ bmx!11
            ▀ ■       P R O U D L Y   P R E S E N T S   :         ▄■


                        PS3 3.40 FULL SDK (c) SONY            

 ▄▄▄▓▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▒▄▄▄▄▄
       
        Date      : Sept 2011                 Languages: -          
        Platform  : PS3                       Genre    : Development        
    ■▄                                                                  ■▄
 ▄▄▄▓▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄░▄▄▄▄▄▄
     ▄                                                                   ■
                                                                        ▀

  Release Info:
  ~~~~~~~~~~~~~

  Here is the FULL 3.40 SDK by Sony. It includes all the tools and samples
  missing in the previously leaked SDK which was only 50mb in size ...

  
  Notes:
  ~~~~~~

  Enjoy
              

     ▄                                                                    ■
   ■                     Enjoy This Fine DUPLEX Release                 ▄
 ▄▄▄▓▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄░▄▄▄▄▄▄
     ▄                                                                 ■▄ bmx!
PS3.Full.3.40.SDK.PS3-DUPLEX Download Links:

PS3.Full.3.40.SDK.PS3-DUPLEX
PS3.Full.3.40.SDK.PS3-DUPLEX
PS3.Full.3.40.SDK.PS3-DUPLEX

Some more links:

PS3.Full.3.40.SDK.PS3-DUPLEX
PS3.Full.3.40.SDK.PS3-DUPLEX
PS3.Full.3.40.SDK.PS3-DUPLEX

Multiupload:

PS3.Full.3.40.SDK.PS3-DUPLEX
PS3.Full.3.40.SDK.PS3-DUPLEX
PS3.Full.3.40.SDK.PS3-DUPLEX

Fufox:

PS3.Full.3.40.SDK.PS3-DUPLEX
PS3.Full.3.40.SDK.PS3-DUPLEX
PS3.Full.3.40.SDK.PS3-DUPLEX

Premium Link Generator: http://hf.gr0wl.com
Release: PS3.Full.3.40.SDK.PS3-DUPLEX
NFO: http://pastebin.com/dQJkMzf8 / http://pastebin.com/EwfQBHZB

PS3.Full.3.60.SDK.PS3-JoHNAaRoN

Release: S0nyHatesMe-PS3.FULL.3.60.SDK.PS3-JoHNAaRoN
NFO: http://nzbindex.nl/nfo/58344609/S0nyHatesMe-PS3.FULL.3.60.SDK.PS3-JoHNAaRoN-23-sonyhatesme-ja.nzb
NZB: http://www.mysterbin.com/detail?c=59184628
NZB: http://nzbindex.nl/release/58344609/S0nyHatesMe-PS3.FULL.3.60.SDK.PS3-JoHNAaRoN-23-sonyhatesme-ja.nzb
NZB: https://binsearch.net/?q=PS3.FULL.3.60.SDK.PS3&max=100&adv_age=1100&server=

Ok, First of all I would like to say FCK THE PS3 SCENE (if you can even call it that). I will no longer be apart of this joke of a Scene and will not put up with all the drama any longer. I bid the PS3 Scene farewell for the last time. GOOD BYE AND FCK YOU ALL!!

P.S. One thing I will do for ya'll is leave a parting gift (why, because I can)

Big shoutout to my main man Hades, also SeNsEyE, dk, j00mla and FP20

1. PS3.Full.3.60.SDK.PS3-JoHNAaRoN (usenet is your friend)
2. NPDRM KEYS (unlisted appldr keys)

1. PS3 3.60 FULL SDK (c) SONY          

Date     : Sept 2011
Languages: -
Platform : PS3
Genre    : Development
filename : sonyhatesme-jr.part**.rar
filecount: 92

  Release Info:
  ~~~~~~~~~~~~~

3.60 SDK by S0ny.
  
  Notes:
  ~~~~~~

Enjoy

SDK3.60/Extras/PS3DECHUpdateData.355.001d.zip
SDK3.60/Offline Installer/InstallFiles/[162]-PS3_SDK_CGTUTORIAL-240_001.zip
SDK3.60/Offline Installer/InstallFiles/[28]-PS3_SDKDoc-360_01-CHM-English.zip
SDK3.60/Offline Installer/InstallFiles/[29]-PS3_SDKDoc-360_01-Help2-English.zip
dox/CBE_Architecture_v101_e.pdf
dox/CBE_Public_Registers_v15.pdf
dox/Language_Extensions_for_CBEA_v23_e.pdf
dox/RSX-Users_Manual_e.pdf
dox/SDK_doc/en/chm/PS3_Index_e.chm
dox/SDK_doc/en/chm/PS3_SDKDoc_e.chm
dox/SDK_doc/en/chm/ProDG_PS3_Linker-E.chm
dox/SDK_doc/en/chm/Table of Contents-E.chm
dox/SDK_doc/en/help2/H2Reg.exe
dox/SDK_doc/en/help2/H2Reg.ini
dox/SDK_doc/en/help2/Install_SCE_PS3_Help2_Documentation_e.bat

etc...
etc...
etc...

2. NPDRM KEYS (unlisted appldr keys)

appldr 3.55 (rev?) "035" (NPDRM)
erk-035: 357EBBEA265FAEC271182D571C6CD2F62CFA04D325588F213DB6B2E0ED166D92
riv-035: D26E6DD2B74CD78E866E742E5571B84F
public-035: 00DCF5391618604AB42C8CFF3DC304DF45341EBA4551293E9E2B68FFE2DF527FFA3BE8329E015E57
curve_type: 0x3A[

appldr 3.55 (rev?) "027" NPDRM
erk-027: 8E737230C80E66AD0162EDDD32F1F774EE5E4E187449F19079437A508FCF9C86
riv-027: 7AAECC60AD12AED90C348D8C11D2BED5
public-027: 05BF09CB6FD78050C78DE69CC316FF27C9F1ED66A45BFCE0A1E5A6749B19BD546BBB4602CF373440
curve_type: 0x0A

appldr ? unknown4 - 3.55? ? NPDRM
erk-unk4: F9EDD0301F770FABBA8863D9897F0FEA6551B09431F61312654E28F43533EA6B
riv-unk4: A551CCB4A42C37A734A2B4F9657D5540
public-unk4: B05F9DA5F9121EE4031467E74C505C29A8E29D1022379EDFF0500B9AE480B5DAB4578A4C61C5D6BF
curve_type: 0x11

appldr ? NPDRM
erk: 337a51416105b56e40d7caf1b954cdaf4e7645f28379904f35f27e81ca7b6957
riv: 8405c88e042280dbd794ec7e22b74002
public: 9bff1cc7118d2393de50d5cf44909860683411a532767bfdac78622db9e5456753fe422cbafa1da1
curve_type: 0x18

http://img24.imageshack.us/img24/9083/snapshote.png

See you on the DARKSiDE!
JoHNAaRoN

Finally, from pete_uk: 3.40 SDK - Installation in Windows Guide

PS3 3.40 SDK Installation. Tested on Windows XP & 7 (64 & 32)

PART 1: Installing the SDK & MinGW/MSYS

Extra Software Required

To use the SDK in Windows, we first need to install a compiler environment for the SDK to use. For this we are going to use MinGW & MSYS. Download "Tools.zip" from http://www.multiupload.com/1S32GOPPFQ and extract its contents to a folder somewhere.

Browse to the folder you extracted tools.zip to, then:

1. Launch “mingw-get-inst-20100909.exe” Once the installer starts, click “Next” 3 times and then accept the agreement, click “Next” another 4 times and then click “Install”. The installation will then complete and click “Finish”.

2. Launch “MSYS-1.0.11.exe” Click “Yes” on the box that appears, click “Next” and then accept the agreement. Click “Next” 3 times and then “Install”. It will then ask if you would like to perform a post install, Press Y then enter, Press Y then enter again, input c:/MinGW then press any key. Un-tick the 2 boxes and the click “Finish”.

3. Launch “msysDTK-1.0.1.exe” Click “Yes” on the box that appears, click “Next” and then accept the agreement. Click “Next” twice then click “Install”. “Click” next then “finish”.

SDK Installation

Browse to the folder that you extracted your SDK installer to then:

1. Launch “PS3SdkInstaller.exe”

2. Click “Next” on the first screen then select “Install (Offline)”

3. You can install the whole SDK if you wish, but for basic compiling we only need to select the following:

Tools (Generator / SN / ...) -> SN Tools (Debugger / Tuner / Compiler) - 340 -> [Compiler] SNC PPU Toolchain for Playstation(R)3 - 340.1
SDK - 340_001
SDK Patch (SDK 341) - 341_001
[Compiler] SNC PPU Toolchain for Playstation(R)3 - 340.1
[Compiler] Toolchain(Compiler) GCC4.1.1 - 340_001
[Sample] Extra SDK Samples (CgTutorial Sample) 240_001
[Sample] Extra SDK Samples (Codec Sample Data) - 1.0
[Sample] Sample Showcase - 1.0
[Sample] SDK Sample Package 340_001

4. Click “Next” and then “Install”

5. Once the installer has completed, click “Finish”

Final Configuration

Now that the SDK and MSYS environments are installed, we need to make a change to MSYS’s configuration to set the PS3 SDK as the Home folder.

Browse you computer to “c:\Msys\1.0\etc” and right click on “profile” and select open. Select “Wordpad” and then “OK”

Scroll down until you find the line “# Set up USER’s home directory” and change HOME=”/home/$LOGNAME” to HOME=”c:/usr/local/cell”
And then Save.

Signing / Packaging Tools

As the PS3 SDK will by default only produce “Debug” packages and “Fake” SELF files which will only work on DEBUG/TOOL PS3s, we need to add some signing and packaging tools to the SDK. These are make_self.exe, make_self_npdrm.exe, psn_package_npdrm.exe and some DLL libs. I have uploaded a zip containing the tools you will need. Download “sign&pack.zip” from http://www.multiupload.com/X55VC8QA3E and extract the contents to “C:\usr\local\cell\host-win32\bin”

That is the PS3 3.40 SDK and MSYS compile environment setup and ready to go.

PART 2: Compiling, Signing and Packaging Twinaphex’s Snes9x-Next

The easiest way to get the current sources of Twinaphex’s emulators is to use GIT to clone his Github repositories. Download GIT from http://msysgit.googlecode.com/files/Git-1.7.8-preview20111206.exe and start the installer. Keep clicking “Next” and accept any agreements until you get to “Adjusting your PATH environment”, Select “Run Git from the Windows Command Prompt” and click “Next” twice. Click “Finish” to complete the installation.

Using Git to Acquire Sources

Start “Windows Command Prompt” and enter:

cd c:\usr\local\cell

To keep things tidy inside the SDK folder, Make a folder by entering:

mkdir Emus

and then enter the folder by typing:

cd emus

To download the current source of Snes9x-Next enter:

git clone https://github.com/twinaphex/snes9x-next

Now close the command prompt.

Compiling Snes9x-Next

Start MSYS and change to the folder that you downloaded the snes9x source to by entering:

cd emus/snes9x-next

We now need to start the build process. Twinaphex includes in the source a script to build different versions. To build the stand alone version of snes9x, we need to enter:

compile_ps3.sh make

The build process will take a few minutes to complete.

Once it completes, we need to sign the elf and move it to the correct location. To do this, enter:

make_self_npdrm snes9x-next-ps3.ppu.elf ps3/pkg/usrdir/EBOOT.BIN SNES90000

Now we need to package it all together by first changing to the correct folder:

cd ps3/pkg

And then enter:

psn_package_npdrm

That is the build procedure complete. Close Msys and browse to c:\usr\local\cell\emus\snes9x-next\ps3\pkg and you will find IV0002-SNES90000_00-SAMPLE0000000001.PKG ready for installing.

The Easy Way:

To make the process easier I have created a batch file to do all of the work for you and create a Multiman Version.

Download http://www.multiupload.com/5WL5WLGXON to “c:\usr\local\cell\emus\snes9x-next”. Start “MSYS” and enter the following:

cd emus
cd snes9x
make_mm.bat
exit

If you now browse you computer to c:\usr\local\cell\emus\snes9x\ps3\pkg you will find IV0002-SNES90000_00-SAMPLE0000000001.pkg








Stay tuned for more PS3 Hacks and PS3 CFW news, follow us on Twitter and be sure to drop by the PS3 Hacks and PS3 Custom Firmware Forums for the latest PlayStation 3 scene updates and homebrew releases!

Comments 288 Comments - Go to Forum Thread »

Errors

The following errors occurred with your submission

Okay

Quick Reply Quick Reply

  • Decrease Size
    Increase Size
  • Wrap [QUOTE] tags around selected text
Posting Quick Reply - Please Wait Posting Quick Reply - Please Wait
ConsoleDev's Avatar
#283 - ConsoleDev - 40w ago
Reply
For who missed it when it was leaked some times ago i have reuploaded PhyreEngine 3.1.5.0: http://depositfiles.com/files/4p123ftl3

Mirror: http://uploading.com/files/ed9a5m1c/Phyre%2BEngine.zip/

zadow30's Avatar
#282 - zadow30 - 65w ago
Reply
i have compile the cipher project in the sdk, in the libsecure.

after compile two files show
cypher.ppu.elf (decryptet)
cypher.ppu.self(encrypted)

ran spu-lv2-readelf.exe from the sdk and got this output.

what does the magic means ??

http://pastebin.com/wGhXPdJD

zadow30's Avatar
#281 - zadow30 - 66w ago
Reply
the libsecure from the sdk looks more interesting

libsecure (Cryptography and Security) Overview
� 2010 Sony Computer Entertainment Inc. All Rights Reserved. SCE Confidential
SCE CONFIDENTIAL
Table of Contents
1 Library Overview ............................................................................................................................. 3
Overview .............................................................................................................................................. 3
Related Files ........................................................................................................................................ 3
Sample Programs................................................................................................................................. 3
2 Usage Overview .............................................................................................................................. 5
Initialization Process ............................................................................................................................ 5
Cryptography ........................................................................................................................................ 6
Message Authentication Process ......................................................................................................... 9
Library Termination ............................................................................................................................. 11 �SCEI libsecure Library Release 2.0.0
- 2 -
SCE CONFIDENTIAL
1
Library Overview
Overview
This document provides an overview of the libsecure library and describes its use from a developer's point of view.
The libsecure library is a cross-platform API which may be used on PlayStation®Portable, PLAYSTATION®3. It provides cryptography functionalities (encryption and decryption methods) and security functionalities (such as hash calculation and message authentication).
The ciphers supported by the library include AES, Blowfish, TEA, XTEA and RSA. The hash methods supported by the library include MD5 and SHA-1.
Related Files
In order to use the libsecure library, you must have the following files:
File name
Description
libsecure.h
Header file
libsecure.a
Static library file
libSceSecure.sprx
libSceSecure_stub.a
Library module file
Stub library file
Note: the .a and .sprx files are located in the lib/ps3 directory, and the .h file is located in the Include directory.
libsecure can be used by linking the static library file within your build or by loading the library module in your application before using it.
On PlayStation®Portable and PLAYSTATION®3 systems, the MD5 and SHA-1 libraries provided in the appropriate SDK are required to use the libsecure library as well if you are linking statically (using the libsecure.a file).
File name
Description
libmd5.a
Platform specific library file for MD5
libsha1.a
Platform specific library file for SHA-1
Sample Programs
Four samples are available in the libsecure Samples directory of the libsecure package. They illustrate the usage of the libsecure library:
•
cipher - Sample that demonstrates the cryptography functionality API usage
•
cipherfw - Sample that demonstrates how to expand the cryptography methods
•
hash - Sample that demonstrates the security functionality API usage
•
hashfw - Sample that demonstrates how to expand the hash methods
samples/ps3/cipher/
This sample program demonstrates the encryption and decryption of a single message block using the libsecure API functions.
samples/ps3/cipherfw/
This sample program demonstrates how to create additional ciphers which can be used for the encryption and decryption of a single message block.
�SCEI libsecure Library Release 2.0.0
- 3 -
SCE CONFIDENTIAL
samples/ps3/hash/
This sample demonstrates the hash calculation and the authentication of a message using the libsecure API functions.
samples/ps3/hashfw/
This sample program demonstrates how to create additional hash methods which can be used for the hash calculation and authentication of a message.
�SCEI libsecure Library Release 2.0.0
- 4 -
SCE CONFIDENTIAL
2
Usage Overview
The walkthrough, described below, illustrates the most basic usage of the library. The purpose of the walkthrough is to encrypt and decrypt a message and to ensure that a message has not been tampered with.
Initialization Process
The first step is to call the sceLibSecureInit function. This requires a memory block provided with the structure SceLibSecureBlock and some flags detailing which functionality of the library are used.
The memory block should be at least 72 bytes (when using only one cipher method and one hash method), but the recommended size would be 512 bytes to use the libsecure library to its full potential.
The flags tell what functionality can be used after the initialization. The flags' descriptions are given in the table below:
Flag
Description
SCE_LIBSECURE_FLAGS_CIPHER_TEA
Specify this flag if you need the TEA cipher for encrypting messages
SCE_LIBSECURE_FLAGS_CIPHER_XTEA
Specify this flag if you need the XTEA cipher for encrypting messages
SCE_LIBSECURE_FLAGS_CIPHER_BLOWFISH
Specify this flag if you need the Blowfish cipher for encrypting messages
SCE_LIBSECURE_FLAGS_CIPHER_AES
Specify this flag if you need the AES cipher for encrypting messages
SCE_LIBSECURE_FLAGS_CIPHER_RSA
Specify this flag if you need the RSA cipher for encrypting messages
SCE_LIBSECURE_FLAGS_HASH_SHA1
Specify this flag if you need the SHA1 hash methods for message authentication
SCE_LIBSECURE_FLAGS_HASH_MD5
Specify this flag if you need the MD5 hash methods for message authentication
SCE_LIBSECURE_FLAGS_HASH_SHA256
Specify this flag if you need the SHA256 hash methods for message authentication
SCE_LIBSECURE_FLAGS_HASH_SHA384
Specify this flag if you need the SHA384 hash methods for message authentication
SCE_LIBSECURE_FLAGS_HASH_SHA512
Specify this flag if you need the SHA512 hash methods for message authentication
SCE_LIBSECURE_FLAGS_RANDOM_GENERATOR
Specify this flag if you need to generate random messages
For the purpose of this overview, we will initialize the library and we will use the random generator messages, the AES encryption and the SHA1 hash method:
SceLibSecureErrorType error;
SceLibSecureBlock runtimemem;
/* Allocate a 1KB memory block */
runtimemem.length = 1*1024;
runtimemem.pointer = malloc(runtimemem.length);
if(runtimemem.pointer != NULL)
{
/* Initialize the library */
error = sceLibSecureInit(SCE_LIBSECURE__FLAGS_CIPHER_AES |
SCE_LIBSECURE_FLAGS_HASH_SHA1 |
SCE_LIBSECURE_FLAGS_RANDOM_GENERATOR, &runtimemem);

�SCEI libsecure Library Release 2.0.0
}
- 5 -
SCE CONFIDENTIAL
Cryptography
The library supports symmetric and asymmetric ciphers. The ciphers included in the library are listed in the table below:
�SCEI libsecure Library Release 2.0.0
- 6 -
SCE CONFIDENTIAL
�SCEI libsecure Library Release 2.0.0
Cipher
Name
Type
AES
Advanced Encryption Standard
Symmetric
Blowfish
Blowfish
Symmetric
TEA
Tiny Encryption Algorithm
Symmetric
XTEA
eXtended TEA
Symmetric
RSA
Ron Rivest, Adi Shamir and Leonard Adleman
Asymmetric
The library manages different block cipher modes and does not depend on the cipher used for the encryption and decryption. Depending on the type of data access you require (sequential or direct access), you use a different block cipher mode. The list of the block cipher modes supported by the library is shown below:
Mode
Name
Data access
ECB
Electronic code book
Direct for encryption and decryption
CBC
Cipher block chaining
Sequential for encryption, direct for decryption
PCBC
Propagating cipher block chaining
Sequential for encryption and decryption
CFB
Cipher feedback
Sequential for encryption, direct for decryption
OFB
Output feedback
Sequential for encryption and decryption
CTR
Counter
Direct for encryption and decryption
Using the ECB mode may be a poor choice when you are encrypting and decrypting more than one block of data and it is not advised to use it for a long sequence of data.
Because ciphers work on units of a fixed size (depending on the cipher used and for others depending on the key size), but messages vary in length, the library manages padding to allow certain messages to be encrypted and decrypted without any problems. Padding is used depending mainly on the cipher or type of cipher used to encrypt and to decrypt data, and can be used in conjunction with other ones. The list of padding modes supported by the library is shown below:
Padding
Description
Cipher use
None
No padding is performed on the message and the remaining incomplete block is not encrypted or decrypted.
All symmetric ciphers
Normal
No padding is performed on the message and the remaining incomplete block may be encrypted or decrypted (depends on the block cipher mode).
All symmetric ciphers (NB: the last incomplete block will be encrypted for CFB, OFB and CTR block cipher modes)
Stealing
No padding is performed on the message and the remaining incomplete block is encrypted or decrypted using the stealing method.
All symmetric ciphers (NB: the last incomplete block will be encrypted for ECB, CBC and PCBC block cipher modes)
Residual block termination
No padding is performed on the message and the remaining incomplete block is encrypted or decrypted using the CBC block cipher mode.
All symmetric ciphers
Nils
The remaining incomplete block is filled with zero values.
All symmetric ciphers
Spaces
The remaining incomplete block is filled with spaces.
All symmetric ciphers
Random
The remaining incomplete block is filled with random values.
All symmetric ciphers
Size
The remaining incomplete block is filled with values equal to the size of the incomplete block.
All symmetric ciphers
Nil size
The remaining incomplete block is filled with zero values except the last one being the size of the incomplete block.
All symmetric ciphers
- 7 -
SCE CONFIDENTIAL
�SCEI libsecure Library Release 2.0.0
Padding Description Cipher use
Bit
The remaining incomplete block is filled with bit 0 except the last one being a bit 1.
All symmetric ciphers
PKCS#1
The padding used complies with the PKCS#1 v2.1 standard.
RSA cipher
OAEP
The padding used complies with the 'Optimal Asymmetric Encryption Padding' standard.
RSA cipher
A context may be needed depending on the cipher and the block cipher mode used before the encryption or decryption process.
The first step is to retrieve the context size if one is required. Retrieving the context size requires the cipher used, the block cipher mode, the key, the number of rounds (only required for TEA, XTEA and Blowfish ciphers):
u8 array_key[16]= { 0xaa, 0xbb, 0xcc, 0xdd, 0xee, 0xff, 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88, 0x99 };
SceLibSecureSymmetricKey key = { sizeof(array_key), array_key };
size_t context_size;
SceLibSecureErrorType error;
/* Retrieve the context size */
error = sceLibSecureCryptographyGetContextSize(SCE_LIBSECURE_CIPHER_AES,
SCE_LIBSECURE_BLOCKCIPHERMODE_ECB, &key, 0, &context_size);
if(error != SCE_LIBSECURE_OK)
{
/* Error management */

}
The second step is to set the context according to the parameters passed when retrieving the context size. Depending on the block cipher mode used, you may also specify an initialization vector (IV) and a file offset (used for CTR only).
SceLibSecureErrorType error;
SceLibSecureBlock context;
/* Allocate the context */
context.length = context_size;
context.pointer = malloc(context.length);
if(context.pointer != NULL)
{
/* Set the context */
error = sceLibSecureCryptographySetContext(&context,
SCE_LIBSECURE_CIPHER_AES, SCE_LIBSECURE_BLOCKCIPHERMODE_ECB,
&key, 0, NULL, 0);

}
Finally, the encryption and decryption process begins. You need to prepare the block or the message (succession of blocks) you want to encrypt or decrypt. The message or the block length is required to match the cipher block size, which may be retrieved by calling the sceLibSecureCryptographyGetBlockSize function. This function requires the cipher, the key (SceLibSecureSymmetricKey for symmetric ciphers, and SceLibSecureAsymmetricKey for asymmetric ciphers) and the padding scheme used:
SceLibSecureErrorType error;
SceLibSecureSymmetricKey key = { sizeof(array_key), array_key };
size_t block_size;
- 8 -
SCE CONFIDENTIAL
/* Retrieve the block size */
error = SceLibSecureCryptographyGetBlockSize(SCE_LIBSECURE_CIPHER_AES, &key,
SCE_LIBSECURE_PADDING_NONE, &block_size)
if(error != SCE_LIBSECURE_OK)
{
/* Error management */

}
Now you just need to retrieve the block matching the block size, or the message which must be a multiple of the block size. (If the message is not a multiple of the block size, you need to apply a padding scheme to the message before the encryption process. Please refer to the reference guide for information on this process.) Then call the sceLibSecureCryptographyEncrypt or sceLibSecureCryptographyDecrypt function:
SceLibSecureErrorType error;
u8 array_message[message_size];
SceLibSecureMessage message = { array_message , sizeof(array_message) };
/* Generate a random message */
error = sceLibSecureRandom(&message);
if(error == SCE_LIBSECURE_OK)
{
/* Encrypt the message */
error = sceLibSecureCryptographyEncrypt(&context, &message,
SCE_LIBSECURE_PADDING_NONE);
if(error != SCE_LIBSECURE_OK)
{
/* Error management */

}
/* Decrypt the message */
error = sceLibSecureCryptographyDecrypt(&context, &message,
SCE_LIBSECURE_PADDING_NONE);
if(error != SCE_LIBSECURE_OK)
{
/* Error management */

}
}
It is good practice to destroy the context used previously so that the data used to retrieve the original message is not used. It is also good practice if you do not plan to reuse the same context to continue the encryption or the decryption process. This is done easily using the sceLibSecureCryptographyDeleteContext function:
SceLibSecureErrorType error;
/* Destroy the context */
error = sceLibSecureCryptographyDeleteContext(&context);

Message Authentication Process
The encryption and decryption of a message may be affected in messages that are tampered with. A message authentication can be used to ensure a message is signed and has not been tampered with. It uses the hash functionality of the library, a key and the message to authenticate it and it returns an HMAC value which is then used by the receiver of the message to ensure it has not been tampered with.
The library supports different hash functions and additional hash functions can be added to the library by the developer. A list of the ciphers included in the library is shown in the table below:
�SCEI libsecure Library Release 2.0.0
- 9 -
SCE CONFIDENTIAL
Hash
Name
MD5
MD5 Message Digest Algorithm
SHA-1
SHA-1 Secure Hash Algorithm
SHA-256
SHA-256 Secure Hash Algorithm
SHA-384
SHA-384 Secure Hash Algorithm
SHA-512
SHA-512 Secure Hash Algorithm
A context is always required to use the hash functionality provided by the library.
The first step is to retrieve the context size and the digest size (which is the same as the HMAC value). Retrieving the context size or the digest size requires the hash:
SceLibSecureErrorType error;
size_t context_size, digest_size;
/* Retrieve the context size */
error = sceLibSecureHashGetContextSize(SCE_LIBSECURE_HASH_SHA1,
&context_size);
if(error != SCE_LIBSECURE_OK)
{
/* Error management */

}
/* Retrieve the digest size */
error = sceLibSecureHashGetDigestSize(SCE_LIBSECURE_HASH_SHA1,
&digest_size);
if(error != SCE_LIBSECURE_OK)
{
/* Error management */

}
The second step is to set the context according to the parameters passed when retrieving the context size, and to allocate the memory for the HMAC value:
SceLibSecureErrorType error;
SceLibSecureBlock context;
SceLibSecureHmac hmac;
/* Allocate the context */
context.length = context_size;
context.pointer = malloc(context.length);
/* Allocate the HMAC */
hmac.length = digest_size;
hmac.pointer = malloc(hmac.length);
if(context.pointer != NULL && hmac.pointer != NULL)
{
/* Set the context */
error = sceLibSecureHashSetContext(&context, SCE_LIBSECURE_HASH_SHA1);

}
Finally, you need to process the message you want to authenticate by using the sceLibSecureHashHmac function. This function requires the context, the key (SceLibSecureSymmetricKey for symmetric ciphers, and SceLibSecureAsymmetricKey for asymmetric ciphers) and the message:
SceLibSecureErrorType error;
/* Authenticate the message */
�SCEI libsecure Library Release 2.0.0
- 10 -
SCE CONFIDENTIAL
�SCEI libsecure Library Release 2.0.0
- 11 -
error = sceLibSecureHashHmac(&context, &hmac, &key, &message);
if(error != SCE_LIBSECURE_OK)
{
/* Error management */

}
It is good practice to destroy the context used previously, to avoid the data being used or if you do not plan to reuse the same context to continue the encryption or the decryption process. This is done easily using the sceLibSecureHashDeleteContext function:
SceLibSecureErrorType error;
/* Destroy the context */
error = sceLibSecureHashDeleteContext(&context);

Library Termination
The process of fully terminating the library is performed by calling the sceLibSecureDestroy function. This function ensures that the library has cleared the memory used.
/* Destroy the library */
error = sceLibSecureDestroy();

Tidusnake666's Avatar
#280 - Tidusnake666 - 66w ago
Reply
Maybe those microsoft dll's refer to SHA-1 encryption used in ps3gen?

I really doubt we would see app public keys there, like I said, it's just for masterdisc encryption, decrypting selfs signed with app-priv is impossible on this program

zadow30's Avatar
#279 - zadow30 - 66w ago
Reply
about the key be in ps3gen.. if i open genelib.dll or ps3gen.exe in PE explorer i see there are alot of other files (dll)

just don't know why they use microsoft crypto.

no expert on dll files etc, so can't say if there would be anything there or not.

Page 2 of 58 «‹123456789›LAST »

Related PS3 News and PS3 CFW Hacks or JailBreak Articles

• Guide to Install multiMAN PS3 Themes via USB from a PKG File
• Simple PS3Updates v1.6 Build 2 Final PS3 Homebrew App Updated
• Video: Super Pixel Jumper v1.2 PS3 Homebrew Game is Released
• Video: Pointman: The Akkadian Wars PS3 Homebrew Game Arrives
• PSPMinis / PS3Minis / Bite v1.5.1 Update for PS3 is Now Released
• PS3 Fan Control Utility v1.7 for PS3 CFW CEX 3.41 to 4.41 Arrives
Affiliates  NewsNow  Privacy  PS3 CFW & MFW  PS3 Hacks & JailBreak  PS3 Reviews  PS3 Videos  © 2013 PlayStation 3 News

PlayStation 3 Links

• Contact Us E-Mail
• PS3 Affiliates
• PS3 CFW & MFW
• PS3 Debug Firmware
• PS3 Decrypted PSN Links for CFW
• PS3 Downloads
• PS3 EBOOT.BIN Original File Links
• PS3 Firmware
• PS3 Game Releases List
• PS3 Guides & Tutorials
• PS3 Hacking Guides and Tutorials
• PS3 Hacks & JailBreak
• PS3 Help & Support
• PS3 JailBreak Game Compatibility List
• PS3 JB2 / True Blue (TB) Game Links
• PS3 multiMAN Updates
• PS3 News Forums
• PS3 News Site FAQ
• PS3 News Site Advertising FAQ
• PS3 News Site Posting FAQ
• PS3 News Site Privacy FAQ
• PS3 News Site Rules
• PS3 News Site Tag Cloud
• PS3 News Site Terms
• PS3 Resources
• PS3 Reviews
• PS3 Save Files Repository
• PS3 Themes
• PS3 Trophies List
• PS3 Videos
• PS Vita Trophies List

PlayStation 3 News Discussions
Codemasters Unveils Grid 2 Mono Edition, Ultimate Collector's Item - 1m ago

PS3 News's Avatar
Quote Codemasters Community Manager Ben Walke has officially unveiled Grid 2 Mono Edition today, which he touts as the ultimate collector's item for ...
By PS3 News with
 0 Comments »
Ice-cool Skate Em Up OlliOlli Kickflips Onto PS Vita This Year - 1m ago

PS3 News's Avatar
Quote Roll7 Creative Director John Ribbins announced today that the ice-cool skate 'em up OlliOlli video game kickflips onto PS Vita later this year....
By PS3 News with
 0 Comments »
Rogero CEX PS3 Custom Firmware (CFW) v4.21 is Now Released! - 12m ago

PS3 News's Avatar
Quote Unfortunately no, we don't currently have such a section. If you want to create a thread on it in the PS3 hacks section you may though. ...
By PS3 News with
 1585 Comments »
PS3 DVDROM can I remarry help? - 15m ago

karpof's Avatar
Quote hi sorry took so long to get back... been working... i have original BD board but the other BD rom and board are different from the original,.. if i h...
By karpof with
 2 Comments »

Latest PlayStation 3 Trophies
Pool Nation: Mega Shot
Pool Nation: Mega Streak
Pool Nation: Super Zen
Pool Nation: Zen

Latest PlayStation Vita Trophies
Men's Room Mayhem: Toilet Trouble
Men's Room Mayhem: Mayhem Master
Men's Room Mayhem: Hygiene Award
Men's Room Mayhem: Sand in the Face

Latest PlayStation 3 Releases
Kamen Rider Battride War Premium TV Sound Edition JPN PS3-HR - 05-24-2013
Tom Clancys H A W X EUR PS3-Googlecus - 05-23-2013
Terraria JPN PS3-HR - 05-23-2013
Kamen Rider Battlide War JPN PS3-Caravan - 05-21-2013

Latest PlayStation 3 Themes
Wolverine Origins PS3 Theme - 05-19-2013
Heavy Rain (Official) Dynamic PS3 Theme - 05-09-2013
Wipeout HD Fury Dynamic PS3 Theme - 05-06-2013
Batman Arkham City Dynamic PS3 Theme - 05-04-2013
  • Contact Us
  • -
  • PS3 News