-
Notifications
You must be signed in to change notification settings - Fork 6
/
INSTALL
54 lines (44 loc) · 1.89 KB
/
INSTALL
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
Preferable way is to download tarball with the signature from official
website and, for example, run tests with benchmarks:
% wget http://gogost.cypherpunks.ru/gogost-1.1.tar.xz
% wget http://gogost.cypherpunks.ru/gogost-1.1.tar.xz.sig
% gpg --verify gogost-1.1.tar.xz.sig gogost-1.1.tar.xz
% xz -d < gogost-1.1.tar.xz | tar xf -
% make -C gogost-1.1 all bench
% echo hello world | ./gogost-1.1/streebog256
f72018189a5cfb803dbe1f2149cf554c40093d8e7f81c21e08ac5bcd09d9934d
And then you can include its source code in your project for example
like this:
% mkdir -p myproj/src
% export GOPATH=$PWD/myproj
% cd myproj/src
% cat > main.go <<EOF
package main
import (
"encoding/hex"
"fmt"
"cypherpunks.ru/gogost/gost34112012256"
)
func main() {
h := gost34112012256.New()
h.Write([]byte("hello world"))
fmt.Println(hex.EncodeToString(h.Sum(nil)))
}
EOF
% cp -r ../../gogost-1.1/src/cypherpunks.ru .
% go run main.go
c600fd9dd049cf8abd2f5b32e840d2cb0e41ea44de1c155dcd88dc84fe58a855
You have to verify downloaded tarballs integrity and authenticity to be
sure that you retrieved trusted and untampered software. GNU Privacy
Guard is used for that purpose.
For the very first time it it necessary to get signing public key and
import it. It is provided below, but you should check alternative
resources.
pub rsa2048/0x82343436696FC85A 2016-09-13 [SC]
CEBD 1282 2C46 9C02 A81A 0467 8234 3436 696F C85A
uid GoGOST releases <gogost at cypherpunks dot ru>
Look in PUBKEY.asc file.
% gpg --keyserver hkp://keys.gnupg.net/ --recv-keys 0x82343436696FC85A
% gpg --auto-key-locate dane --locate-keys gogost at cypherpunks dot ru
% gpg --auto-key-locate wkd --locate-keys gogost at cypherpunks dot ru
% gpg --auto-key-locate pka --locate-keys gogost at cypherpunks dot ru