platform/core/security/yaca.git
8 years agoyaca_key_import() basic implementation (symmetrical and RSA) 09/68009/10
Lukasz Pawelczyk [Thu, 28 Apr 2016 16:30:29 +0000 (18:30 +0200)]
yaca_key_import() basic implementation (symmetrical and RSA)

Change-Id: I8a90a06326fabbbd8b013452c1d0797635451464

8 years agoyaca_key_export() implementation for YACA_KEY_FORMAT_DEFAULT 08/68008/9
Lukasz Pawelczyk [Mon, 25 Apr 2016 16:33:26 +0000 (18:33 +0200)]
yaca_key_export() implementation for YACA_KEY_FORMAT_DEFAULT

Change-Id: I946b1f862dd7f75d93372cea00deb6487ae35fb7

8 years agoSome TODOs added for things noticed 07/68007/8
Lukasz Pawelczyk [Thu, 28 Apr 2016 11:55:04 +0000 (13:55 +0200)]
Some TODOs added for things noticed

Change-Id: I8683a77c3e50dea327cb5c10973d1fe310765470

8 years agoSmall fixes in key.c
Lukasz Pawelczyk [Thu, 28 Apr 2016 11:39:06 +0000 (13:39 +0200)]
Small fixes in key.c

Check for key length (non zero and dividable by 8).
Asymmetric keys in the current state are INVALID_ARGUMENT.

Change-Id: Ic7dd64fa86a485f11e52b83b2b82f710c4d55c80

8 years agoAPI changes around key_import and key_export
Lukasz Pawelczyk [Wed, 20 Apr 2016 14:35:44 +0000 (16:35 +0200)]
API changes around key_import and key_export

key_import will autodetect key_format and key_file_format. Only the
expected key_type is required.
key_export needs to have key_format and key_file_format explicitly
given (obviously). It will get the key_type from the key.

Change-Id: I6a8e04c886f6acd95dc124918606fbad992108c2

8 years agoAdd info about yaca tests. Remove unnecessary test dir. 12/68512/2
Dariusz Michaluk [Thu, 5 May 2016 10:39:23 +0000 (12:39 +0200)]
Add info about yaca tests. Remove unnecessary test dir.

Change-Id: Icb519091c09c426993c50f5fac8ef6d9c1c8c874

8 years agoRename key_fmt to key_file_fmt type and introduce a real key_fmt enum. 04/68004/4
Lukasz Pawelczyk [Wed, 20 Apr 2016 13:19:50 +0000 (15:19 +0200)]
Rename key_fmt to key_file_fmt type and introduce a real key_fmt enum.

key_file_fmt is a format of the file (PEM, DER, RAW, BASE64).
Newly added key_fmt is a format of a key within file format (PKCS#X, etc).

E.g. we can have PKCS#1 encoded as PEM or DER and PKCS#8 encoded again
as PEM or DER. Those two format types are independent of each other.

Change-Id: I38b9106c619a5b45c09be48d95f9278f43b79dd4

8 years agoSwitch to smart-tabs in key.c and key.h 03/68003/2
Lukasz Pawelczyk [Mon, 25 Apr 2016 13:31:22 +0000 (15:31 +0200)]
Switch to smart-tabs in key.c and key.h

Change-Id: I8d6186819fe1edb3cea5a58124e06e4b1fbbbac9

8 years agoReplace YACA_ERROR_OPENSSL_FAILURE with YACA_ERROR_INTERNAL 29/67829/3
Dariusz Michaluk [Thu, 28 Apr 2016 12:01:30 +0000 (14:01 +0200)]
Replace YACA_ERROR_OPENSSL_FAILURE with YACA_ERROR_INTERNAL

Change-Id: Ibb6ffca3dc778479556ba7412b46b3f9c542c424

8 years agoCleanup API documentation. 23/67823/4
Dariusz Michaluk [Thu, 28 Apr 2016 11:07:47 +0000 (13:07 +0200)]
Cleanup API documentation.

Change-Id: I4e4e1ce027d9672adb1bf92eebfc8e8696f90cb5

8 years agoReview and simplify Seal/Open example. 73/66873/6
Dariusz Michaluk [Thu, 21 Apr 2016 11:06:31 +0000 (13:06 +0200)]
Review and simplify Seal/Open example.

Change-Id: I3d41c8de8edf79237027162f654af65952a5d9d3

8 years agoSeal/Open implementation. 72/66872/9
Dariusz Michaluk [Thu, 21 Apr 2016 11:09:18 +0000 (13:09 +0200)]
Seal/Open implementation.

Change-Id: I8c89eb8117158440fb6bd5ab8a6875ca29755093

8 years agoyaca_open_init() needs key length to generate EVP_CIPHER 71/66871/4
Dariusz Michaluk [Thu, 21 Apr 2016 14:06:38 +0000 (16:06 +0200)]
yaca_open_init() needs key length to generate EVP_CIPHER

Change-Id: I5d12ca2ac41c54a6a73844033c9ab6a0118b954f

8 years agoChange spaces to tab in CMakeLists 96/67096/2
Dariusz Michaluk [Tue, 12 Apr 2016 13:48:14 +0000 (15:48 +0200)]
Change spaces to tab in CMakeLists

Change-Id: I721359eaade46100c96d6a9fd9ed3e24293868d6

8 years agoSet debug function in examples 54/66854/5
Krzysztof Jackiewicz [Thu, 21 Apr 2016 11:06:40 +0000 (13:06 +0200)]
Set debug function in examples

Change-Id: Ia4e65acbad056d988b7ceffa3f9190f40b35270a

8 years agoDump openssl errors after each failure 53/66853/6
Krzysztof Jackiewicz [Thu, 21 Apr 2016 10:51:54 +0000 (12:51 +0200)]
Dump openssl errors after each failure

Change-Id: Ie665574073d00e29a451fcd799488efa35023bbb

8 years agoAdd helper functions for openssl error handling 52/66852/6
Krzysztof Jackiewicz [Thu, 21 Apr 2016 11:15:53 +0000 (13:15 +0200)]
Add helper functions for openssl error handling

Change-Id: Ibc20d9e37bc2d90a92646e1115d9a1b63f5342e6

8 years agoBugfix: yaca_encrypt_final used in decryption 29/66829/1
Dariusz Michaluk [Thu, 21 Apr 2016 09:45:31 +0000 (11:45 +0200)]
Bugfix: yaca_encrypt_final used in decryption

Change-Id: I26f60bc9adfd8e55390a1522c6d36197cccc46b5

8 years agoExamples reviewed and simplified after RSA/HMAC sign implementation. 81/66181/5
Lukasz Pawelczyk [Thu, 14 Apr 2016 14:56:31 +0000 (16:56 +0200)]
Examples reviewed and simplified after RSA/HMAC sign implementation.

Change-Id: I4b771695346d77ff0a133a6907e701de6fcfe856

8 years agoSign/verify initial implementation. Examples to follow. 44/65844/7
Lukasz Pawelczyk [Tue, 12 Apr 2016 11:42:52 +0000 (13:42 +0200)]
Sign/verify initial implementation. Examples to follow.

Change-Id: I31205fdbb897011b2cf5cbff02acbae396e95205

8 years agoSplit ECC key types into ECDSA and ECDH 38/66738/1
Lukasz Pawelczyk [Wed, 20 Apr 2016 13:28:15 +0000 (15:28 +0200)]
Split ECC key types into ECDSA and ECDH

Change-Id: I58b90609886d529cc1b387c56dd544977e5b6803

8 years agoAdd a line break before printing out formatted data bytes. 80/66180/4
Lukasz Pawelczyk [Fri, 15 Apr 2016 14:07:12 +0000 (16:07 +0200)]
Add a line break before printing out formatted data bytes.

Change-Id: Iadd01247f0cba4190f99990bdf48e38351580a56

8 years agoAdd a TODO about get_output length signature. 64/66164/3
Lukasz Pawelczyk [Thu, 14 Apr 2016 14:56:09 +0000 (16:56 +0200)]
Add a TODO about get_output length signature.

Change-Id: I33b588ab52da7e1efb05e48c73f5335f02b55fb8

8 years agoyaca_seal_init() needs key length to generate EVP_CIPHER 01/66401/2
Dariusz Michaluk [Mon, 18 Apr 2016 14:56:42 +0000 (16:56 +0200)]
yaca_seal_init() needs key length to generate EVP_CIPHER

Change-Id: I65f40910983d5d8928174807dbdc7c622eee70d8

8 years agoSplit symmetric/asymmetric encryption 29/66329/3
Dariusz Michaluk [Mon, 18 Apr 2016 10:35:32 +0000 (12:35 +0200)]
Split symmetric/asymmetric encryption

Change-Id: Iab1755771de9cdb8d2b2902cf6b6a1adcb343ade

8 years agoNullify destroyed pointer. 63/66163/1
Lukasz Pawelczyk [Thu, 14 Apr 2016 14:52:58 +0000 (16:52 +0200)]
Nullify destroyed pointer.

Change-Id: I40384227010a733499b05bf6b587a1ec125505df

8 years agoyaca_ctx_free: Cause exception on missing destructor. 05/65605/8
Mateusz Kulikowski [Mon, 11 Apr 2016 13:52:33 +0000 (15:52 +0200)]
yaca_ctx_free: Cause exception on missing destructor.

ctx->ctx_destriy is mandatory for all contexts.
Add assert to verify that.

Change-Id: I1a1b5b5c7eb50eb5cea440ad74d410aeb2cdda59
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoAdd yaca_ctx_get|set_param prototypes. 04/65604/8
Mateusz Kulikowski [Mon, 11 Apr 2016 13:51:51 +0000 (15:51 +0200)]
Add yaca_ctx_get|set_param prototypes.

Change-Id: I714a47663e742bc8c3eeb446483eee0a58a8a056
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoUse crypto_zalloc for internal structure allocations. 03/65603/8
Mateusz Kulikowski [Mon, 11 Apr 2016 13:50:50 +0000 (15:50 +0200)]
Use crypto_zalloc for internal structure allocations.

Change-Id: I3a3f738cf238c362ac33e3aa01c3a37d263140f9
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoyaca: add yaca_zalloc 02/65602/8
Mateusz Kulikowski [Mon, 11 Apr 2016 13:46:33 +0000 (15:46 +0200)]
yaca: add yaca_zalloc

This allocator will be mostly used to allocate contexts/keys.

Change-Id: I5c3a5efcda5a243503ac80502c221157e18eaa2a
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoImplement limited symmetric cipher support 01/65601/8
Mateusz Kulikowski [Mon, 11 Apr 2016 13:35:20 +0000 (15:35 +0200)]
Implement limited symmetric cipher support

Change-Id: I5b130e3e1d41cfcce1f730f3d1b316c088432677
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoAdd package with examples. 92/65592/8
Dariusz Michaluk [Mon, 11 Apr 2016 13:10:17 +0000 (15:10 +0200)]
Add package with examples.

Change-Id: Idd9fee1bdc3588721fb74f1dca3ff570e827a757

8 years agoImplement yaca_get_iv_bits() 00/65600/6
Mateusz Kulikowski [Mon, 11 Apr 2016 13:33:39 +0000 (15:33 +0200)]
Implement yaca_get_iv_bits()

Move code to encrypt* as it's encryption related.

Change-Id: Id9b5072e3fb220aaffcc0f1aad5f2b0893fa06ed
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoencrypt: add get_symmetric_algorithm 99/65599/7
Mateusz Kulikowski [Mon, 11 Apr 2016 13:31:50 +0000 (15:31 +0200)]
encrypt: add get_symmetric_algorithm

Implement function to map yaca algorithm enums to EVP_CIPHER.

It is currently not very fast, and doesn't handle all algorithms/modes
supported by yaca.

Change-Id: I34c9a78044561b7fdcdc9e23632e45ff745e7f34
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agointernal.h: add YACA_CTX_ENCRYPT 98/65598/6
Mateusz Kulikowski [Mon, 11 Apr 2016 13:27:21 +0000 (15:27 +0200)]
internal.h: add YACA_CTX_ENCRYPT

It is context for encryption

Change-Id: Icb8ebbb9804edca48cab3d6523a9e27c3ab30fe1
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agosimple: Handle encrypt/decrypt block sizes properly 95/65595/5
Mateusz Kulikowski [Mon, 11 Apr 2016 10:40:18 +0000 (12:40 +0200)]
simple: Handle encrypt/decrypt block sizes properly

- Calculate output block sizes properly
- Resize output allocations to size output

Change-Id: I58cc4530f9b832375c20c79c9883910adaaccc67
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoEncrypt example update 94/65594/7
Mateusz Kulikowski [Mon, 11 Apr 2016 09:58:52 +0000 (11:58 +0200)]
Encrypt example update

- Handle outputs allocation properly
- Calculate IV lengths
- Generate IV properly

Change-Id: I3ae9c15dac9fa36bb308846fc4c33c61296ca819
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agocrypto.h: rename yaca_get_iv_length() to yaca_get_iv_bits() 66/65866/2
Mateusz Kulikowski [Wed, 13 Apr 2016 12:45:16 +0000 (14:45 +0200)]
crypto.h: rename yaca_get_iv_length() to yaca_get_iv_bits()

Function returns IV length in bits - rename it to avoid confusion.

Change-Id: I58f565e1ca96321856f099d55ec456f23be1dbe0
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoexamples: Add LOREM*_SIZE 65/65865/1
Mateusz Kulikowski [Wed, 13 Apr 2016 12:44:40 +0000 (14:44 +0200)]
examples: Add LOREM*_SIZE

Add macros containing sizes of lorem* strings.

Change-Id: I2514f9fc03d55561530fac9ec856f404f9aa987b
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoAdd SIGN context to context types. 81/65781/4
Lukasz Pawelczyk [Tue, 12 Apr 2016 11:42:30 +0000 (13:42 +0200)]
Add SIGN context to context types.

Change-Id: If61017092a29d5b50c6036b825492a7760e87cd6

8 years agoRemove unused function pointer, no need to do that for keys. 97/65797/3
Lukasz Pawelczyk [Tue, 12 Apr 2016 12:54:01 +0000 (14:54 +0200)]
Remove unused function pointer, no need to do that for keys.

Change-Id: I1b856243bc42a09783cadfe42b402f9c8dc144f0

8 years agoImplement getting the bits of an evp type key. 80/65780/4
Lukasz Pawelczyk [Tue, 12 Apr 2016 11:34:44 +0000 (13:34 +0200)]
Implement getting the bits of an evp type key.

Change-Id: Ibbd62e146bcfc7ecaa999a694416db2488e14052

8 years agoSmall cosmetic change in digest.c to line it up with the style of the rest of the... 79/65779/2
Lukasz Pawelczyk [Tue, 12 Apr 2016 11:34:04 +0000 (13:34 +0200)]
Small cosmetic change in digest.c to line it up with the style of the rest of the code.

Change-Id: Ib22750311254ffaaa0f241191f9a9fdeed1a00b7

8 years agoGet rid of EVP_MD from digest struct, it's redudant. 78/65778/2
Lukasz Pawelczyk [Tue, 12 Apr 2016 11:33:19 +0000 (13:33 +0200)]
Get rid of EVP_MD from digest struct, it's redudant.

Change-Id: I52d84125d4b0f2ab1face439477efcc82ee0a0fe

8 years agoAdd todo.txt file for global TODOs. 77/65777/2
Lukasz Pawelczyk [Tue, 12 Apr 2016 11:30:44 +0000 (13:30 +0200)]
Add todo.txt file for global TODOs.

Change-Id: I79d942960fa25b44095b6ea150d5bd1f408c8343

8 years agoAdd YACA_ERROR_SIGNATURE_INVALID error code. Mentioned in the doxygen. 76/65776/2
Lukasz Pawelczyk [Tue, 12 Apr 2016 11:30:02 +0000 (13:30 +0200)]
Add YACA_ERROR_SIGNATURE_INVALID error code. Mentioned in the doxygen.

Change-Id: Ieff9d6a8408c878b7ff9656f637382abab23f742

8 years agoEnable extra compilation flags. 91/65591/3
Dariusz Michaluk [Mon, 11 Apr 2016 12:24:27 +0000 (14:24 +0200)]
Enable extra compilation flags.

Change-Id: I689300d8176eacdad75ddf19bb1b3f91510e872d

8 years agoFix compilation with Clang. 56/65356/2
Lukasz Pawelczyk [Fri, 8 Apr 2016 14:26:48 +0000 (16:26 +0200)]
Fix compilation with Clang.

Some bugs in the code fixed, caught by Clang warnings/errors.

Change-Id: If6b2b617222ea8d07d5d3af4202a4dae3b7ebebe
Signed-off-by: Lukasz Pawelczyk <l.pawelczyk@samsung.com>
8 years agoyaca_ctx_free: NULL context handling 93/65593/1
Mateusz Kulikowski [Mon, 11 Apr 2016 09:43:04 +0000 (11:43 +0200)]
yaca_ctx_free: NULL context handling

Ignore null contexts.

Change-Id: I7ecac9603519d91d5708f4eed11af0a9f8a4ce17
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoRename get_digest_algorithm -> digest_get_algorithm
Mateusz Kulikowski [Fri, 8 Apr 2016 10:49:31 +0000 (12:49 +0200)]
Rename get_digest_algorithm -> digest_get_algorithm

Use common naming for internal API

Change-Id: Ie6dce91fca60d099249e32938b9ebc5dd8a1a6d2
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoMove key structures to internal API header, expose getters
Mateusz Kulikowski [Fri, 8 Apr 2016 10:48:07 +0000 (12:48 +0200)]
Move key structures to internal API header, expose getters

- Rename get_evp|simple_key to key_get_evp|simple and expose as internal API
- Move key structures to internal API header

Change-Id: I192d456b90043446e93b788fab5c9e5625dfd3f6
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoConvert all key lengths to bits
Mateusz Kulikowski [Fri, 8 Apr 2016 10:25:37 +0000 (12:25 +0200)]
Convert all key lengths to bits

- Rename API parameters to avoid confusion (key_len -> key_bits)
- Rename internal key length to key_bits
- Fix key length handling where it was done incorrectly

Change-Id: If3dcf8ad87246a144019d3fc93c6251c3529d881
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agokey: Cleanups
Mateusz Kulikowski [Wed, 6 Apr 2016 13:33:39 +0000 (15:33 +0200)]
key: Cleanups

- Clean import for symmetric keys
- Clean generation of "simple/single" keys
- Return proper error from yaca_key_gen (key not supported vs invalid type)

Change-Id: Ia993ad1b1908dd9c5babc31b687e2e9b9bc07eba
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agokey: Check for key_len overflows
Mateusz Kulikowski [Wed, 6 Apr 2016 13:32:10 +0000 (15:32 +0200)]
key: Check for key_len overflows

Affected functions:
- key_import
- key_gen

Change-Id: I1b2898b03d3bf950706c21671afe9d6a89311255
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agokey: implement pbkdf2
Mateusz Kulikowski [Wed, 6 Apr 2016 13:31:22 +0000 (15:31 +0200)]
key: implement pbkdf2

- Fixup key_len - it is now size_t
- Add maximum password length

Change-Id: Ic5bc6de538f305020c52219793e2dc440de47eb3
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agodigest: Add get_digest_algorithm
Mateusz Kulikowski [Mon, 4 Apr 2016 13:23:38 +0000 (15:23 +0200)]
digest: Add get_digest_algorithm

Add API to translate yaca_digest_algo_e to EVP_MD.

It is needed by other modules (like pbkdf2, message sign/verify etc.).

Change-Id: I0b73eb51e076e443ebc269f96772c438479c81f5
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoRemove private headers (*_p.h)
Mateusz Kulikowski [Thu, 7 Apr 2016 14:37:21 +0000 (16:37 +0200)]
Remove private headers (*_p.h)

Merge all internal defines / macros / declarations into internal.h

This file may be later split, but for now it's small enough.

Change-Id: I5f00c856fd7daa0773fd6ccdb175312df1e06818
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agocompilation: use c11 instead of c99
Mateusz Kulikowski [Mon, 4 Apr 2016 13:20:29 +0000 (15:20 +0200)]
compilation: use c11 instead of c99

Change-Id: I1cea470f7ee346bf9cd38899c592fbc973568e83
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoAdd coding rules document
Mateusz Kulikowski [Wed, 6 Apr 2016 11:27:33 +0000 (13:27 +0200)]
Add coding rules document

Based on internal discussions and tizen rules.

Change-Id: Ibf4a65635bfd6adbc3259a28b948591e30d3f9c6
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoWith cmake we should not allow the main git directory to be polluted.
Lukasz Pawelczyk [Wed, 6 Apr 2016 12:34:03 +0000 (14:34 +0200)]
With cmake we should not allow the main git directory to be polluted.

Change-Id: I24e334e7296af32c6e5de81cefb1ff8ece7305d2

8 years agoFix a SIGSEGV in key-exchange example. It's still not implemented though.
Lukasz Pawelczyk [Wed, 6 Apr 2016 12:33:39 +0000 (14:33 +0200)]
Fix a SIGSEGV in key-exchange example. It's still not implemented though.

Change-Id: I2ea56f1109d799d77c1a322567250afca68da13b

8 years agoSome minor digest changes.
Lukasz Pawelczyk [Wed, 6 Apr 2016 12:32:14 +0000 (14:32 +0200)]
Some minor digest changes.

- code style to make it more similar to the recent key changes
- digest_ctx_free()

Change-Id: Icf11abc94fb4811edfb6a9350905aed7f29e8e78

8 years agoPartially implement a new key type (evp) and yaca_key_gen_pair()
Lukasz Pawelczyk [Wed, 6 Apr 2016 12:31:21 +0000 (14:31 +0200)]
Partially implement a new key type (evp) and yaca_key_gen_pair()

Change-Id: I7c0d41d734284544585a173f2c64c5b6e77f4b24

8 years agoRename owl -> yaca
Mateusz Kulikowski [Wed, 6 Apr 2016 09:06:39 +0000 (11:06 +0200)]
Rename owl -> yaca

Use official project name - YACA (Yet Another Crypto API)

Change-Id: Ib226ee33efafe79663017cedcbf589137c2799fb
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoMake binary install dir configurable
Krzysztof Jackiewicz [Tue, 5 Apr 2016 11:55:23 +0000 (13:55 +0200)]
Make binary install dir configurable

Change-Id: I83eab84f09e81ee871a5dae56f2061f9899f6a32

8 years agoRe-indent the definitions after adding the API prefix.
Lukasz Pawelczyk [Tue, 5 Apr 2016 10:35:39 +0000 (12:35 +0200)]
Re-indent the definitions after adding the API prefix.

Change-Id: Ic887def78ea211b6fbf0e1670e9b4c623884e71a

8 years agoAdd cmake scripts for example compilation
Krzysztof Jackiewicz [Mon, 4 Apr 2016 09:09:29 +0000 (11:09 +0200)]
Add cmake scripts for example compilation

Change-Id: I0eaf20b6e20bf0285e50b066572d53cc93074efe

8 years agoFix digest ctx initalization
Krzysztof Jackiewicz [Mon, 4 Apr 2016 09:42:55 +0000 (11:42 +0200)]
Fix digest ctx initalization

Change-Id: I65dfef2680303ff51106ad86d739f07c763646ec

8 years agoRename 'crypto' to 'owl' in include directives
Krzysztof Jackiewicz [Mon, 4 Apr 2016 09:08:53 +0000 (11:08 +0200)]
Rename 'crypto' to 'owl' in include directives

Change-Id: Ia568b1f875eee4059cfb9cf3c9342c1d04515ca0

8 years agoAdd build/packaging system
Dariusz Michaluk [Thu, 31 Mar 2016 09:45:10 +0000 (11:45 +0200)]
Add build/packaging system

Change-Id: I218be0c159121689213dbfb3b8a1407a9405890e
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoAdd LICENSE file
Dariusz Michaluk [Thu, 31 Mar 2016 12:50:43 +0000 (14:50 +0200)]
Add LICENSE file

Change-Id: I59f9fc549eeb776260b3487431337ad51eed5816

8 years agoMore cleanups:
Mateusz Kulikowski [Fri, 1 Apr 2016 17:22:15 +0000 (19:22 +0200)]
More cleanups:

- added missing TODOs as comments
- upgraded owl_exit
- added license and init/exit to test.c

Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoCleanups
Lukasz Pawelczyk [Thu, 31 Mar 2016 14:31:03 +0000 (16:31 +0200)]
Cleanups

- coding style
- some fixes after review comments
- API define for API calls, rest hidden by default

Signed-off-by: Lukasz Pawelczyk <l.pawelczyk@samsung.com>
Change-Id: Iefb002dc9b4212279dc10d5cafa2efcdc6fd4729

8 years agoRenamed the API from crypto_ to owl_. Filenames not changed for now.
Lukasz Pawelczyk [Thu, 31 Mar 2016 12:40:26 +0000 (14:40 +0200)]
Renamed the API from crypto_ to owl_. Filenames not changed for now.

Signed-off-by: Lukasz Pawelczyk <l.pawelczyk@samsung.com>
Change-Id: Ibb0b3a430033216efb3035a55643bf489553dd33
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoAdd doxygen config
Dariusz Michaluk [Thu, 31 Mar 2016 12:50:01 +0000 (14:50 +0200)]
Add doxygen config

Change-Id: Id594f8fdd7d9bc8543fb3b9bede2ab6bb23ad5d2

8 years agoLibrary code stub
Mateusz Kulikowski [Thu, 31 Mar 2016 06:25:16 +0000 (08:25 +0200)]
Library code stub

- Basic symmetric key handling
- Simple API
- crypto.c: use OPENSSL_alloc/free

Addons:
- (simple) top-level makefile, makefiles update
- Basic error codes
- Stubs for all crypto-api functions (all examples are linked properly)
- dump_hex() for examples
- Moved API headers to api/ top-level-directory
- crypto.c: init, rand_bytes, get_output_length
- ctx_p.h: stub of context
- digest.c: message digest support
- key.c: key sanity check, key import (untested), free
- simple.c: implementation of simple api (only digest tested)
- drop types_p.h

Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
Change-Id: I1438e8466934443afe55bb05eddd7580b9798a6a

8 years agoAdd readme.txt with some basic information
Mateusz Kulikowski [Wed, 23 Mar 2016 15:32:52 +0000 (16:32 +0100)]
Add readme.txt with some basic information

Change-Id: Ib45e193850127307173e211f4d38598fca2a61c7
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoAdd .gitignore
Mateusz Kulikowski [Wed, 23 Mar 2016 13:41:17 +0000 (14:41 +0100)]
Add .gitignore

Change-Id: Ib0bcdf66db284043fed3f6689b43342d5b53ae41
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoRemove old code
Mateusz Kulikowski [Wed, 23 Mar 2016 13:35:32 +0000 (14:35 +0100)]
Remove old code

Remove code from previous designs (no longer needed)

Change-Id: I3ad0589e3e5559f81053718e44dd797ae3b5d7c7
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoAdd Makefile for examples
Mateusz Kulikowski [Wed, 23 Mar 2016 10:37:52 +0000 (11:37 +0100)]
Add Makefile for examples

We can now compile-test them

Change-Id: I7ab33819151a2a966bc7d118d8455e9c5d7625f6
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoAdd DH and ECDH key derivation example
Dariusz Michaluk [Tue, 22 Mar 2016 15:36:13 +0000 (16:36 +0100)]
Add DH and ECDH key derivation example

Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
Conflicts:
src/include/crypto/types.h

Change-Id: I8e18c35339f7c37f611e5e075994fe4bcac2b647

8 years agoSignatures example
Krzysztof Jackiewicz [Tue, 22 Mar 2016 14:14:14 +0000 (15:14 +0100)]
Signatures example

Change-Id: If4c3edfc890769cd2df8c639fa9a95ca344aa494

8 years agoAdd AES-GCM encryption example
Dariusz Michaluk [Mon, 21 Mar 2016 17:08:33 +0000 (18:08 +0100)]
Add AES-GCM encryption example

Change-Id: If0b2f47ff08150f516dad8814553b036e3849a57
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoEncryption example
Mateusz Kulikowski [Mon, 21 Mar 2016 10:47:35 +0000 (11:47 +0100)]
Encryption example

- Simple api
- Advanced api
- seal/open

Change-Id: Idf9b507ce4403dc2c3fb3a5f7d0ab207991b0d41
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoDigest example added.
Mateusz Kulikowski [Mon, 21 Mar 2016 10:28:33 +0000 (11:28 +0100)]
Digest example added.

Add simple and advanced digest API usage examples

Change-Id: I3b0159f8da555ec33d43aa1cb6457ef886c0f14b
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
8 years agoSynergic API
Mateusz Kulikowski [Fri, 18 Mar 2016 16:07:25 +0000 (17:07 +0100)]
Synergic API

After review on Mar 18 + cleanup / comments
After review on Mar 22

Change-Id: Ie9cbd62796ae2a088e44715654c67a8b42808903
Signed-off-by: Mateusz Kulikowski <m.kulikowski@samsung.com>
Signed-off-by: Lukasz Pawelczyk <l.pawelczyk@samsung.com>
8 years agoInitial empty repository master
seonil kim [Thu, 7 Apr 2016 01:00:38 +0000 (18:00 -0700)]
Initial empty repository