1 /*
2  * Copyright (c) 2017 Nordic Semiconductor ASA
3  * Copyright (c) 2015-2016 Intel Corporation
4  *
5  * SPDX-License-Identifier: Apache-2.0
6  */
7 
8 #include <string.h>
9 #include <bt_errno.h>
10 
11 #include <ble_os.h>
12 #include "bt_crypto.h"
13 
bt_rand(void * buf,size_t len)14 int bt_rand(void *buf, size_t len)
15 {
16 	return bt_crypto_rand(buf, len);
17 }
18 
bt_encrypt_le(const u8_t key[16],const u8_t plaintext[16],u8_t enc_data[16])19 int bt_encrypt_le(const u8_t key[16], const u8_t plaintext[16],
20 		  u8_t enc_data[16])
21 {
22 	return bt_crypto_encrypt_le(key, plaintext, enc_data);
23 }
24 
bt_encrypt_be(const u8_t key[16],const u8_t plaintext[16],u8_t enc_data[16])25 int bt_encrypt_be(const u8_t key[16], const u8_t plaintext[16],
26 		  u8_t enc_data[16])
27 {
28 	return bt_crypto_encrypt_be(key, plaintext, enc_data);
29 }
30 
bt_decrypt_be(const u8_t key[16],const u8_t plaintext[16],u8_t enc_data[16])31 int bt_decrypt_be(const u8_t key[16], const u8_t plaintext[16],
32 		  u8_t enc_data[16])
33 {
34 	return bt_crypto_decrypt_be(key, plaintext, enc_data);
35 }
36 
37