summaryrefslogtreecommitdiff
path: root/ecp/src/ecp/crypto/test/ed25519.c
blob: 5f70792353f8c2fa06abadc157bbba83d40a69ad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <unistd.h>

#include <openssl/curve25519.h>

#define KEY_LEN     32
#define SIG_LEN     64

int main(int argc, char *argv[]) {
    unsigned char msg[1024];
    size_t msg_len;
    int rv;
    unsigned char public[KEY_LEN];
    unsigned char private[KEY_LEN * 2];
    unsigned char signature[SIG_LEN];

    strcpy((char *)msg, "PERA JE CAR!");
    msg_len = strlen((char *)msg) + 1;

    ED25519_keypair(public, private);
    ED25519_sign(signature, msg, msg_len, private);
    rv = ED25519_verify(msg, msg_len, signature, public);
    printf("OPEN rv:%d\n", rv);
}