libaacs | branch: master | npzacs <[email protected]> | Wed Nov 3 14:11:37 2010 +0200| [339b6db5571e42d8e27459e6175e7aa0e603c8ea] | committer: npzacs
mmc_open(): generate random nonce when nonce not given > http://git.videolan.org/gitweb.cgi/libaacs.git/?a=commit;h=339b6db5571e42d8e27459e6175e7aa0e603c8ea --- src/libaacs/mmc.c | 12 +++++++++++- 1 files changed, 11 insertions(+), 1 deletions(-) diff --git a/src/libaacs/mmc.c b/src/libaacs/mmc.c index e78485e..b4c183c 100644 --- a/src/libaacs/mmc.c +++ b/src/libaacs/mmc.c @@ -362,9 +362,19 @@ MMC *mmc_open(const char *path, const uint8_t *host_priv_key, if (host_priv_key) memcpy(mmc->host_priv_key, host_priv_key, 20); if (host_cert) memcpy(mmc->host_cert, host_cert, 92); - if (host_nonce) memcpy(mmc->host_nonce, host_nonce, 20); if (host_key_point) memcpy(mmc->host_key_point, host_key_point, 40); + if (host_nonce) { + memcpy(mmc->host_nonce, host_nonce, 20); + + } else { + crypto_create_nonce(mmc->host_nonce, sizeof(mmc->host_nonce)); + + char str[sizeof(mmc->host_nonce)*2 + 1]; + DEBUG(DBG_MMC, "Created host nonce (Hn): %s\n", + print_hex(str, mmc->host_nonce, sizeof(mmc->host_nonce))); + } + #if defined(HAVE_MNTENT_H) char *file_path = (char*)malloc(strlen(path) + 1); _______________________________________________ libaacs-devel mailing list [email protected] http://mailman.videolan.org/listinfo/libaacs-devel
