maxgwen
Membres-
Compteur de contenus
97 -
Inscription
-
Dernière visite
Type de contenu
Profils
Forums
Calendrier
Tout ce qui a été posté par maxgwen
-
[résolu] -nand Corrompu Plus De Kv.bin
maxgwen a répondu à un(e) sujet de davted dans JTAG - LPT/USB
Re: le souci viens du kv ces un kv1 bricolé en kv2 donc sa peu pas allé -
[résolu] -nand Corrompu Plus De Kv.bin
maxgwen a répondu à un(e) sujet de davted dans JTAG - LPT/USB
re : sinon cherche du coté des badblock et comme tu n a pas de nand d origine injecte un xbr complet et dump puis apres tu compare le xbr injecté et le dump la tu aura tes zone bad block plus qua les bougé et moi en general les bas block sur les xenon que j ai vue sont en block 5 donc en plein dans le systeme ..... -
[résolu] -nand Corrompu Plus De Kv.bin
maxgwen a répondu à un(e) sujet de davted dans JTAG - LPT/USB
Slt debranche ton alim et rebranche et vire ta carte memoire si tu en a une -
Ok merci zouzz donc voila une grosse update KVTool_v0.7 kv1 & kv2 supporter ..... merci bugess pour les fichier kv2 sa ma permis d avancé considérablement
-
Ok donc si je comprend bien dans les v1 y a pas l 'OSIG ...ou bien a un offset different ?
-
fonction original de flash tool void CalcECC(unsigned long *pData, unsigned char *pEDC) { int i=0, val=0; unsigned long v = 0; for (i = 0; i < 0x1066; i++) { if (!(i & 31)) { if (i == 0x1000) pData = (unsigned long*)pEDC; v = ~*pData++; /* byte order: LE */ } val ^= v & 1; v>>=1; if (val & 1) val ^= 0x6954559; val >>= 1; } val = ~val; pEDC[0xC]|= (val << 6) & 0xFF; pEDC[0xD] = (val >> 2) & 0xFF; pEDC[0xE] = (val >> 10) & 0xFF; pEDC[0xF] = (val >> 18) & 0xFF; } unsigned char m_pData[512] = { 0x72, 0xEE, 0x24, 0x3C ....etc........ byte encrypter unsigned char m_pSpare[16] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 qui est apellé CalcECC((unsigned long *)&m_pData[0], &m_pSpare[0]); en delphi function BSswap32(Const Buffer: array of Byte): Longword; begin Result:=(Buffer[3] shl 24) or (Buffer[2] shl 16) or (Buffer[1] shl 8) or Buffer[0]; end; m_pData: array[0..511] of byte = ( $72, $EE, $24, $3C ....etc........ byte encrypter m_pSpare: array[0..15] of byte = ( $01, $00, $00, $00, $00, $FF, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 ); procedure CalcECC(var pData: array of byte; var pEDC: array of byte); c++ v = ~*pData++; /* byte order: LE */ resulta v = 3435973836 delphi idx:=0; v := not BSswap32(pData[idx]); // byte order: LE */ Inc(idx,4); resulta v = 3435973836 etc......... voila fonction réécrite reste plus qu'a trouvé comment différencier un kv1 & kv2 fichier decrypter
-
Slt ces pluto quelque chose comme sa function BSswap32(Const Buffer: array of Byte): Longword; begin Result:=(Buffer[3] shl 24) or (Buffer[2] shl 16) or (Buffer[1] shl 8) or Buffer[0]; end; unsigned long = Longword
-
Merci J ai presque tout regroupé enfin presque lol /*---------------------------------------------------------------------------- Function name: BSswap32 Syntax: static inline unsigned long BSswap32(unsigned long t) Parameter: Description: - - Return Value: Description: Description: ----------------------------------------------------------------------------*/ static inline unsigned long BSswap32(unsigned long t) { return ((t & 0xFF) << 24) | ((t & 0xFF00) << 8) | ((t & 0xFF0000) >> 8) | ((t & 0xFF000000) >> 24); } /*---------------------------------------------------------------------------- Procedure name: CalcECC Syntax: void CalcECC(UINT *Data) Parameter: Description: - - Return Value: Description: Description: ----------------------------------------------------------------------------*/ void CalcECC(BYTE *Data, UINT PageSize) { UINT Pos = 0, Value = 0; BYTE *Edc = ((BYTE*) Data) + PageSize; UINT v = 0; for (Pos = 0; Pos < 0x1066; Pos++) { if(!(Pos & 31)) v = ~BSswap32(*Data++); Value ^= v & 1; v >>= 1; if(Value & 1) Value ^= 0x6954559; Value >>= 1; } Value = ~Value; // 26 bit ecc Data Edc[0xC] |= (char) ((Value << 6) & 0xC0); Edc[0xD] = (char) ((Value >> 2) & 0xFF); Edc[0xE] = (char) ((Value >> 10) & 0xFF); Edc[0xF] = (char) ((Value >> 18) & 0xFF); } sa a transcrire en pascal
-
Merci pour ces fichiers bon chose qui est sure ce sont des kv type 2 après j ai fait une comparaison avec fdt et en faite je ne voie pas ce qui change d un KV_dec.bin type 1 ou 2 mais chose qui est sure fdt lui le detecte bien pour ré encrypté le kv car la chose qui change en premier dans le version crypté se sont les block qui sont dans la kv2 et qui ne sont pas dans le kv1 block 512 + 16 ( 16 = 01 00 00 00 00 FF 00 00 00 00 00 00 xx xx xx xx ) le 01 est un compteur , FF indicateur bad-block si different de FF cette zone est concideré en babdblock et apres le reste les XX XX XX XX sa doit etre un crc ou autre je ne connai pas la methode de calcul Donc en gros pour l instant KVTool = KV type 1 il me faut plus d info pour comptinué pour le KV type 2
-
Bonjour une petite update KVTool_v0.5 avec auto détection de la date comme je n'est pas d autre kv je ne peu pas testé ..... bon teste a tous
-
bonjour il faudrai fouiller dans le fichier .log pour trouvé une explication , et les block sont comparé par crc32 block1 nand1 =crc32-1 et block1 nand2 = crc32-2 si crc32-1 <> crc32-2 = erreur etc....
-
Slt bugess , a vrai dire voire le peu de personne qui on accroché sur Gx_Nand lol je me suis mis sur d autre project d ailleurs si vous avez en stock les fichier src nommé ici http://gueux-forum.net/index.php?showtopic=69414 je suis preneur .....
-
Bonjour desolé pour la date du kv mais j ai qu un version de ce kv donc si vous aver une version comme la votre ou la date bug serai intéressent qque je regarde la différence entre ancien kv et nouveau
-
Re la fonction open kv ouvre un KV_dec.bin le tien est un KV_enc.bin surement comme tu dit rawKV donc avant il faut entré ta key cpu et Decrypt/Encrypt KeyVault J ai apporté quelque modification supplémentaire KVTool_v0.3
-
Bonjour bugess le mieux serai un petit dialogue en live genre msn et au sujet du "de memoire avant de modifier un kv il faut le decrypter" je ne c' est pas quelle donné reste identique a tout les kv décrypté donc je comptrol les - - de la date sur le kv , pas génial mais bon ... et pour "decrypt/encrypt kv" en faite ces du rc4 donc si tu prend un fichier pas crypté tu le crypte et s il est crypté du le décrypte , la fonction est identique après le résultat final repend de celui entré KVTool v0.2 n arrête pas la lecture des info du kv même si le kv est crypté
-
Bonjour vous avez une erreur ???? quel partie ne marche pas décryptage ou juste ouvrir kv pour lire les info ??
-
Bonsoir après mon petit Gx_Nand j ai rencontré quelque souci de gestion kv info cryptage etc...... Donc je me suis mis a faire un soft qui regroupe un peu toute ces fonctionnalité , modification des info du kv et cryptage ou décryptage bon test .... KVTool v0.1
-
Slt Zou oui bien vue faire un contrôle des badblock dessus et si cela dépasse le nombre de block réservé sur la nand la je ferai un stop sinon un moved block le fera bien .....
-
Bsr bon encore quelque modif dans la v1.7 si on DbClick sur la fenêtre d info on a un Clear text and remove Gx_Nand.log ensuite si on clic sur l onglet Gx-mod cela nous amene sur le cite des gueux et puis un petit ajout de taille le mode Auto Hack Xell , donc 2 dump de la nand, kv, cfg et comparaison des dump si erreur on arrete ensuite on récupère le CB dans notre nand dumper et on scanne le répertoire \XBReboot-xellous et la dessus on fait un petit scanne de tous les .bin ensuite on contrôle leur CB si on en trouve un identique dans un fichier on l injecte dans la nand ( on peu mettre n importe quelle version xell dedans du moment qu il y est pas de doublon en CB , et surtout aucun attachement a des nom précis je comptrol que les fichier en .bin dedans ) apres au final injection de sont kv & cfg et ces fini Gx_Nand v1.7 by maxgwen for usb-spi module Looking for Usb-Spi Module Usb-Spi Module found ok open usb Flash Config: 0x01198010 Xenon, Zephyr, Opus, Falcon Nand 16Mo Size Block: 16896 octets Start Block: 0x000000 or 0 NbrBlock: 0x000400 or 1024 Reading : AutoDump1.bin Block 03FF Terminate Size Block: 16896 octets Start Block: 0x000000 or 0 NbrBlock: 0x000400 or 1024 Reading : AutoDump2.bin Block 03FF Terminate Nand Compare AutoDump1.bin <> AutoDump2.bin 0 non-matching block(s) found Size Block: 16896 octets Start Block: 0x000001 or 1 NbrBlock: 0x000001 or 1 Reading : Autorawkv1.bin Block 0001 Terminate Size Block: 16896 octets Start Block: 0x000001 or 1 NbrBlock: 0x000001 or 1 Reading : Autorawkv2.bin Block 0001 Terminate Nand Compare Autorawkv1.bin <> Autorawkv2.bin 0 non-matching block(s) found Size Block: 16896 octets Start Block: 0x0003DE or 990 NbrBlock: 0x000002 or 2 Reading : Autorawconfig1.bin Block 03DF Terminate Size Block: 16896 octets Start Block: 0x0003DE or 990 NbrBlock: 0x000002 or 2 Reading : Autorawconfig2.bin Block 03DF Terminate Nand Compare Autorawconfig1.bin <> Autorawconfig2.bin 0 non-matching block(s) found Xenon CB:1921 CB: 1921 <> CB1: 5770 CB: 1921 <> CB1: 6723 CB: 1921 OK XBR_Xenon_8955_3.bin Size Block: 16896 octets Start Block: 0x000000 or 0 NbrBlock: 0x000400 or 1024 Writing : XBR_Xenon_8955_3.bin Block 03FF Terminate Size Block: 16896 octets Start Block: 0x000001 or 1 NbrBlock: 0x000001 or 1 Writing : Autorawkv1.bin Block 0001 Terminate Size Block: 16896 octets Start Block: 0x0003DE or 990 NbrBlock: 0x000002 or 2 Writing : Autorawconfig1.bin Block 03DF Terminate Xbox Hack xell auto terminate Upload Petite question aussi au passage quelqu un c est encrypté un kv si je fournie la key cpu ????? ( résolut)
-
slt nouveau lien sur ftp perso Gx_Nand 1.6.rar
-
Slt en faite comme vous avez put le voire la détection de type de nand ce fait a la connexion mais il me faut pour la gestion des bad block le type de nand donc si on ce connecte pas en spi et que l on veut contrôlé les bad block il faut bien s assuré du type de nand car les secteur réservé sont différent . Mais bon faire une détection du CB sera plus simple pour connaitre le type de nand
-
slt bugess le gros problème c est la langue française qui a une syntaxe beaucoup plus longue que l anglais Open 4 lettre = Ouvrir 6 lettre Donc pour un logiciel le français ces pas top des bouton trop long des fenêtre d info trop longue etc........ sinon voila ma constante string pour les info txt , pas encore mis tout a fait a jour TEXT_DEBUG: array[0..38] of string = ( 'Gx_Nand v1.6 by maxgwen for usb-spi module', 'Looking for Usb-Spi Module', 'Usb-Spi Module not found', 'Usb-Spi Module found ok', 'Incompatible ARM hardware for this version', 'Can not continue', 'Flash Config: 0x', 'Xenon, Zephyr, Opus, Falcon Nand 16Mo', 'Jasper Nand 16Mo', 'Jasper Nand 256Mo', 'Jasper Nand 512Mo', //10 'Nand Unknow Can not continue', 'Close usb', 'Size Block: 16896 octets', 'Start Block: 0x', ' or ', 'NbrBlock: 0x', 'Block ', ' Error:', 'Reading', 'Writing', //20 'Erazing', 'Terminate', 'Error open ', 'Error size ', 'non-matching all block(s)', ' non-matching block(s) found ', 'Nand Compare ', 'Bad Block: ', ' Offset: 0x', '..0x', //30 ' at offset 0x', 'Reading Block: 0x', 'Copying Block: 0x', 'Zeroing Block: 0x', 'you chosen the type of nand 16/256/512 ???', 'the number of reserved block is exceeded maximum of ', ' block', 'bad block area not supported ' );
-
Désolé réédition double poste ....
-
Slt je te retourne la question ....ces bien de resté constructif mais pas blèsent.
-
re: Petit correctif j avait oublié l affichage dans Write et Eraze ..... Gx_Nand v1.6 (mu) Gx_Nand v1.6 (rs)
