summaryrefslogtreecommitdiff
path: root/ecp/src/ecp/crypto/test/ed25519_open.c
blob: b63aac48988c49f419924946b30023e86fbd1a86 (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
28
29
30
#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;

    int fd = open("msg.sig", O_RDONLY);
    read(fd, public, KEY_LEN);
    read(fd, signature, SIG_LEN);
    close(fd);

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