Skip to content

Commit 7fde5b2

Browse files
committed
Fix SHA256
1 parent 8b70a0d commit 7fde5b2

File tree

1 file changed

+10
-7
lines changed

1 file changed

+10
-7
lines changed

src/SecureElement.cpp

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -183,15 +183,18 @@ int SecureElement::readCert(ECP256Certificate & cert, const int certSlot)
183183

184184
int SecureElement::SHA256(const uint8_t *buffer, size_t size, uint8_t *digest)
185185
{
186-
#if defined(BOARD_HAS_SE050)
187-
size_t outLen;
188-
_secureElement.SHA256(buffer, size, digest, 32, &outLen);
189-
#else
190186
_secureElement.beginSHA256();
191-
192-
unit8_t * cursor = buffer;
187+
uint8_t * cursor = (uint8_t*)buffer;
193188
uint32_t bytes_read = 0;
194-
for(; bytes_read + 64 < size; bytes_read += 64, cursor += 64;) {
189+
#if defined(BOARD_HAS_SE050)
190+
size_t outLen = 32;
191+
for(; bytes_read + 64 < size; bytes_read += 64, cursor += 64) {
192+
_secureElement.updateSHA256(cursor, 64);
193+
}
194+
_secureElement.updateSHA256(cursor, size - bytes_read);
195+
_secureElement.endSHA256(digest, &outLen);
196+
#else
197+
for(; bytes_read + 64 < size; bytes_read += 64, cursor += 64) {
195198
_secureElement.updateSHA256(cursor);
196199
}
197200
_secureElement.endSHA256(cursor, size - bytes_read, digest);

0 commit comments

Comments
 (0)