Post: Full List of Black Ops Encryption SRC Links
04-20-2011, 09:41 PM #1
*SCHAOS*
ILLUMINATUS
(adsbygoogle = window.adsbygoogle || []).push({}); Removed no longer needed
(adsbygoogle = window.adsbygoogle || []).push({});

The following 10 users say thank you to *SCHAOS* for this useful post:

.Kane., Alfa, BuC-ShoTz, dm430, Docko412, Joel, noob_like_you, Ritztro, SYNKz, xCristian
04-21-2011, 02:42 AM #11
o no, Buck-shots saw this, challenge lobbies are here soon Smile
04-21-2011, 03:45 AM #12
XxShadowhawkxX
Bounty hunter
Originally posted by SCHAOS
You are partially right, you have to determine which is used for each system. They are almost identical, except for 2 differences.


who is this from MvK* this chaos?
04-21-2011, 04:41 PM #13
zxz0O0
Are you high?
Originally posted by SCHAOS
I have extracted these from the Eboot.elf aswell as the Default.xex. These are all the direct links to the Black Ops Encryption SRC code. Some are used for packet encryption, some are used for file encryption.

You can Download these and experiment with your own decryption programs.

...

Here is an example of the RSA_MAKE_KEY SRC

....


They would be pretty stupid to implement the encryption function. Isn't this the decryption function? Btw: how did you extract this files? Please answer. Thanks
04-21-2011, 11:07 PM #14
dm430
I defeated!
Originally posted by SCHAOS
I have extracted these from the Eboot.elf aswell as the Default.xex. These are all the direct links to the Black Ops Encryption SRC code. Some are used for packet encryption, some are used for file encryption.

You can Download these and experiment with your own decryption programs.

You must login or register to view this content. (Expand File List)


libtomcrypt-1.17\\src\\modes\\ctr\\ctr_done.c"

libtomcrypt-1.17\\src\\modes\\ctr\\ctr_encrypt.c"

libtomcrypt-1.17\\src\\modes\\ctr\\ctr_start.c"

libtomcrypt-1.17\\src\\misc\\crypt\\crypt_register_cipher.c"


libtomcrypt-1.17\\src\\ciphers\\aes\\aes.c"


libtomcrypt-1.17\\src\\misc\\crypt\\crypt_register_hash.c"


libtomcrypt-1.17\\src\\hashes\\sha2\\sha256.c"

libtomcrypt-1.17\\src\\math\\ltm_desc.c"


libtomcrypt-1.17\\src\\pk\\rsa\\rsa_free.c"


libtomcrypt-1.17\\src\\pk\\rsa\\rsa_verify_hash.c"


libtomcrypt-1.17\\src\\pk\\rsa\\rsa_import.c"


libtomcrypt-1.17\\src\\misc\\crypt\\crypt_find_hash.c"


libtomcrypt-1.17\\src\\modes\\ctr\\ctr_decrypt.c"

libtomcrypt-1.17\\src\\misc\\zeromem.c"


libtomcrypt-1.17\\src\\pk\\ecc\\ltc_ecc_mulmod.c"


libtomcrypt-1.17
\\src\\pk\\ecc\\ltc_ecc_map.c"


libtomcrypt-1.17\\src\\pk\\rsa\\rsa_exptmod.c"


libtomcrypt-1.17\\src\\pk\\ecc\\ltc_ecc_projective_add_point.c"


libtomcrypt-1.17\\src\\pk\\rsa\\rsa_make_key.c"


libtomcrypt-1.17\\src\\pk\\ecc\\ltc_ecc_projective_dbl_point.c"



libtomcrypt-1.17\\src\\pk\\asn1\\der\\sequence\\der_decode_sequence_ex.c"


libtomcrypt-1.17\\src\\pk\\pkcs1\\pkcs_1_pss_decode.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\sequence\\der_decode_sequence_multi.c"


libtomcrypt-1.17\\src\\math\\rand_prime.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\integer\\der_decode_integer.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\object_identifier\\der_decode_object_identifier.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\boolean\\der_length_boolean.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\integer\\der_length_integer.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\octet\\der_decode_octet_string.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\short_integer\\der_decode_short_integer.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\utf8\\der_decode_utf8_string.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\bit\\der_length_bit_string.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\boolean\\der_decode_boolean.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\sequence\\der_length_sequence.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\short_integer\\der_length_short_integer.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\utf8\\der_length_utf8_string.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\ia5\\der_length_ia5_string.c"



libtomcrypt-1.17\\src\\pk\\asn1\\der\\printable_string\\der_decode_printable_string.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\printable_string\\der_length_printable_string.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\choice\\der_decode_choice.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\utctime\\der_decode_utctime.c"


.libtomcrypt-1.17\\src\\pk\\asn1\\der\\octet\\der_length_octet_string.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\object_identifier\\der_length_object_identifier.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\ia5\\der_decode_ia5_string.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\bit\\der_decode_bit_string.c"


libtomcrypt-1.17\\src\\pk\\pkcs1\\pkcs_1_mgf1.c"


libtomcrypt-1.17\\src\\pk\\asn1\\der\\utctime\\der_length_utctime.c"


libtomcrypt-1.17\\src\\hashes\\helper\\hash_memory.c"



libtomcrypt-1.17\\src\\hashes\\tiger.c"


Here is an example of the RSA_MAKE_KEY SRC

#include "tomcrypt.h"
/**
@file rsa_make_key.c
RSA key generation, Tom St Denis
*/
#ifdef LTC_MRSA
/**
Create an RSA key
@param prng An active PRNG state
@param wprng The index of the PRNG desired
@param size The size of the modulus (key size) desired (octets)
@param e The "e" value (public key). e==65537 is a good choice
@param key [out] Destination of a newly created private key pair
@return CRYPT_OK if successful, upon error all allocated ram is freed
*/
int rsa_make_key(prng_state *prng, int wprng, int size, long e, rsa_key *key)
{
void *p, *q, *tmp1, *tmp2, *tmp3;
int err;
LTC_ARGCHK(ltc_mp.name != NULL);
LTC_ARGCHK(key != NULL);
if ((size < (MIN_RSA_SIZE/; ) || (size> (MAX_RSA_SIZE/; )) {
return CRYPT_INVALID_KEYSIZE;
}
if ((e < 3) || ((e & 1) == 0)) {
return CRYPT_INVALID_ARG;
}
if ((err = prng_is_valid(wprng)) != CRYPT_OK) {
return err;
}
if ((err = mp_init_multi(&p, &q, &tmp1, &tmp2, &tmp3, NULL)) != CRYPT_OK) {
return err;
}
/* make primes p and q (optimization provided by Wayne Scott) */
if ((err = mp_set_int(tmp3, e)) != CRYPT_OK) { goto errkey; } /* tmp3 = e */
/* make prime "p" */
do {
if ((err = rand_prime( p, size/2, prng, wprng)) != CRYPT_OK) { goto errkey; }
if ((err = mp_sub_d( p, 1, tmp1)) != CRYPT_OK) { goto errkey; } /* tmp1 = p-1 */
if ((err = mp_gcd( tmp1, tmp3, tmp2)) != CRYPT_OK) { goto errkey; } /* tmp2 = gcd(p-1, e) */
} while (mp_cmp_d( tmp2, 1) != 0); /* while e divides p-1 */
/* make prime "q" */
do {
if ((err = rand_prime( q, size/2, prng, wprng)) != CRYPT_OK) { goto errkey; }
if ((err = mp_sub_d( q, 1, tmp1)) != CRYPT_OK) { goto errkey; } /* tmp1 = q-1 */
if ((err = mp_gcd( tmp1, tmp3, tmp2)) != CRYPT_OK) { goto errkey; } /* tmp2 = gcd(q-1, e) */
} while (mp_cmp_d( tmp2, 1) != 0); /* while e divides q-1 */
/* tmp1 = lcm(p-1, q-1) */
if ((err = mp_sub_d( p, 1, tmp2)) != CRYPT_OK) { goto errkey; } /* tmp2 = p-1 */
/* tmp1 = q-1 (previous do/while loop) */
if ((err = mp_lcm( tmp1, tmp2, tmp1)) != CRYPT_OK) { goto errkey; } /* tmp1 = lcm(p-1, q-1) */
/* make key */
if ((err = mp_init_multi(&key->e, &key->d, &key->N, &key->dQ, &key->dP, &key->qP, &key->p, &key->q, NULL)) != CRYPT_OK) {
goto errkey;
}
if ((err = mp_set_int( key->e, e)) != CRYPT_OK) { goto errkey; } /* key->e = e */
if ((err = mp_invmod( key->e, tmp1, key->d)) != CRYPT_OK) { goto errkey; } /* key->d = 1/e mod lcm(p-1,q-1) */
if ((err = mp_mul( p, q, key->N)) != CRYPT_OK) { goto errkey; } /* key->N = pq */
/* optimize for CRT now */
/* find d mod q-1 and d mod p-1 */
if ((err = mp_sub_d( p, 1, tmp1)) != CRYPT_OK) { goto errkey; } /* tmp1 = q-1 */
if ((err = mp_sub_d( q, 1, tmp2)) != CRYPT_OK) { goto errkey; } /* tmp2 = p-1 */
if ((err = mp_mod( key->d, tmp1, key->dP)) != CRYPT_OK) { goto errkey; } /* dP = d mod p-1 */
if ((err = mp_mod( key->d, tmp2, key->dQ)) != CRYPT_OK) { goto errkey; } /* dQ = d mod q-1 */
if ((err = mp_invmod( q, p, key->qP)) != CRYPT_OK) { goto errkey; } /* qP = 1/q mod p */
if ((err = mp_copy( p, key->p)) != CRYPT_OK) { goto errkey; }
if ((err = mp_copy( q, key->q)) != CRYPT_OK) { goto errkey; }
/* set key type (in this case it's CRT optimized) */
key->type = PK_PRIVATE;
/* return ok and free temps */
err = CRYPT_OK;
goto cleanup;
errkey:
mp_clear_multi(key->d, key->e, key->N, key->dQ, key->dP, key->qP, key->p, key->q, NULL);
cleanup:
mp_clear_multi(tmp3, tmp2, tmp1, p, q, NULL);
return err;
}
#endif


yes its timeto get cracking Happy
04-21-2011, 11:10 PM #15
Air.Jordan
Black and Yellow
Originally posted by dm430 View Post
yes its timeto get cracking Happy


Maybe a CL soon? =D
04-21-2011, 11:11 PM #16
dm430
I defeated!
Originally posted by Air.Jordan View Post
Maybe a CL soon? =D


i hope i need to start looking over this stuff
04-21-2011, 11:19 PM #17
Air.Jordan
Black and Yellow
Originally posted by dm430 View Post
i hope i need to start looking over this stuff


Do it man, We need someone to finally crack the PS3, so we can start hosting on PS3 Cool Man (aka Tustin)
04-22-2011, 06:46 AM #18
Wow Sick Man!
04-23-2011, 10:25 AM #19
This has no connection to the Black Ops FastFile encryption. Seriously.

The following 5 users say thank you to TheUnkn0wn for this useful post:

Dante., IDontbreak, Kill_tony485, Mw2Freak13, XKevin356

Copyright © 2026, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo