From 0960be8ca4b4856fd8c3079f8a0d6d4e523e5bad Mon Sep 17 00:00:00 2001 From: Sorvigolova Date: Thu, 15 Feb 2018 22:52:50 +0400 Subject: [PATCH] Fixed Vsh Curve loader --- Release/scetool.exe | Bin 256512 -> 256512 bytes src/keys.cpp | 16 +++++++--------- src/keys.h | 2 +- 3 files changed, 8 insertions(+), 10 deletions(-) diff --git a/Release/scetool.exe b/Release/scetool.exe index d6c340edf3ff0dbe2b24f00a057e77516f33259c..2f024a57c13a71b6dfe7ea1714dff24dbfb13891 100644 GIT binary patch delta 11735 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 diff --git a/src/keys.cpp b/src/keys.cpp index e8e98a4..a40b18b 100644 --- a/src/keys.cpp +++ b/src/keys.cpp @@ -739,13 +739,13 @@ curve_t *vsh_curve_find(u8 ctype) if(ctype > VSH_CTYPE_MAX) return NULL; - _memcpy_inv(_tmp_curve.p, _vsh_curves[ctype].p, 20); - _memcpy_inv(_tmp_curve.a, _vsh_curves[ctype].a, 20); - _memcpy_inv(_tmp_curve.b, _vsh_curves[ctype].b, 20); + memcpy(_tmp_curve.p, _vsh_curves[ctype].p, 20); + memcpy(_tmp_curve.a, _vsh_curves[ctype].a, 20); + memcpy(_tmp_curve.b, _vsh_curves[ctype].b, 20); _tmp_curve.N[0] = ~0x00; - _memcpy_inv(_tmp_curve.N+1, _vsh_curves[ctype].N, 20); - _memcpy_inv(_tmp_curve.Gx, _vsh_curves[ctype].Gx, 20); - _memcpy_inv(_tmp_curve.Gy, _vsh_curves[ctype].Gx, 20); + memcpy(_tmp_curve.N+1, _vsh_curves[ctype].N, 20); + memcpy(_tmp_curve.Gx, _vsh_curves[ctype].Gx, 20); + memcpy(_tmp_curve.Gy, _vsh_curves[ctype].Gy, 20); return &_tmp_curve; } @@ -944,10 +944,8 @@ static bool rap_to_klicensee(const s8 *content_id, u8 *klicensee) o = kc < ec2 ? 1 : 0; rap[p] = kc - ec2; } - else if (kc == 0xFF) - rap[p] = kc - ec2; else - rap[p] = kc; + rap[p] = kc - ec2; } } diff --git a/src/keys.h b/src/keys.h index dbc6bc9..a984e47 100644 --- a/src/keys.h +++ b/src/keys.h @@ -86,10 +86,10 @@ typedef struct _curve /*! VSH Curve entry. */ typedef struct _vsh_curve { + u8 p[20]; u8 a[20]; u8 b[20]; u8 N[20]; - u8 p[20]; u8 Gx[20]; u8 Gy[20]; } vsh_curve_t;