@settitle GoGOST
@copying
-Copyright @copyright{} 2015-2016 @email{stargrave@@stargrave.org, Sergey Matveev}
+Copyright @copyright{} 2015-2018 @email{stargrave@@stargrave.org, Sergey Matveev}
@end copying
@node Top
@url{https://www.gnu.org/philosophy/pragmatic.html, copylefted}
@url{https://www.gnu.org/philosophy/free-sw.html, free software}:
licenced under @url{https://www.gnu.org/licenses/gpl-3.0.html, GPLv3+}.
-You can read about GOST algorithms @url{http://www.cypherpunks.ru/gost/, more}.
+You can read about GOST algorithms @url{http://gost.cypherpunks.ru/, more}.
Currently supported algorithms are:
website and, for example, run tests with benchmarks:
@verbatim
-% wget http://www.cypherpunks.ru/gogost/gogost-1.1.tar.xz
-% wget http://www.cypherpunks.ru/gogost/gogost-1.1.tar.xz.sig
+% 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.gz | tar xf -
-% make -C gogost-1.1 bench
+% xz -d < gogost-1.1.tar.xz | tar xf -
+% make -C gogost-1.1 all bench
+% echo hello world | ./gogost-1.1/streebog256
+f72018189a5cfb803dbe1f2149cf554c40093d8e7f81c21e08ac5bcd09d9934d
+@end verbatim
+
+And then you can include its source code in your project for example
+like this:
+
+@verbatim
+% 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
@end verbatim
@multitable {XXXXX} {XXXX KiB} {link sign} {xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx} {xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}
@headitem Version @tab Size @tab Tarball @tab SHA256 checksum @tab Streebog-256 checksum
+@item 2.0 @tab 39 KiB
+@tab @url{gogost-2.0.tar.xz, link} @url{gogost-2.0.tar.xz.sig, sign}
+@tab @code{28E8C15C 0EC5CC2A 47A8CCDA DF9EADB5 E46970AA FB7FAAF3 AA250FFC 79CE57F7}
+@tab @code{e2858b9c1e7834663838c44b9b9ebbd1f37e5b85ceba5698b6fb5d180e071710}
+
@item 1.2 @tab 34 KiB
@tab @url{gogost-1.2.tar.xz, link} @url{gogost-1.2.tar.xz.sig, sign}
@tab @code{B894D0E4 923F0361 8A33A360 65AE860F FCFAF8F5 42A82D71 EA0A0BA7 7BC99093}
software. @url{https://www.gnupg.org/, The GNU Privacy Guard} is used
for that purpose.
-For the very first time it it necessary to get signing public key and
+For the very first time it is necessary to get signing public key and
import it. It is provided below, but you should check alternative
resources.
% 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
@end verbatim
@item