update
This commit is contained in:
parent
d0c61f58c8
commit
664a858cdc
170
TIIGER TLS/README.md
Normal file
170
TIIGER TLS/README.md
Normal file
@ -0,0 +1,170 @@
|
||||
# TIIGER TLS
|
||||
|
||||
## Building
|
||||
### LINUX
|
||||
Systémové a softvérové špecifikácie:</br>
|
||||
- Ubuntu 20.04.6 LTS (GNU/Linux 5.4.72-microsoft-standard-WSL2 x86_64)
|
||||
- gcc version 9.4.0 (Ubuntu 9.4.0-1ubuntu1~20.04.2)
|
||||
- GNU Make 4.2.1 built for x86_64-pc-linux-gnu
|
||||
- Rust version 1.72.1 (d5c2e9c34 2023-09-13) [update na 1.73.0 (cc66ad468 2023-10-03)]
|
||||
- MIRACL core v4.1
|
||||
- Python 3.8.10
|
||||
- libsodium 1.0.19
|
||||
|
||||
## Server
|
||||
|
||||
```curl https://sh.rustup.rs -sSf | sh```
|
||||
- inštalácia potrebných nástrojov na kompiláciu kódu v jazyku Rust
|
||||
|
||||
```
|
||||
sudo apt install python3
|
||||
git clone https://github.com/miracl/core.git
|
||||
cd core/rust
|
||||
python3 config64.py test
|
||||
cd ../..
|
||||
```
|
||||
- inštalácia pythonu (ak sa ešte nenechádza v systéme), stiahnutie a auto-build MIRACL knižnice
|
||||
|
||||
```
|
||||
git clone https://github.com/Crypto-TII/TLS1.3.git
|
||||
cd TLS1.3/rust/server
|
||||
nano Cargo.toml
|
||||
```
|
||||
- stiahnutie TIIGER TLS knižnice
|
||||
- v súbore Cargo.toml je nutné správne nalinkovať cestu k zložke *mcore*, ktorá vznikla auto-buildom MIRACL knižnice v predošlom kroku
|
||||
|
||||
```
|
||||
cargo build
|
||||
cargo run
|
||||
```
|
||||
- príkazy na kompiláciu serveru a jeho následné spustenie
|
||||
- server je defaultne prístupný cez webový prehliadač na adrese https://127.0.0.1:4433; pripojenie vytvoreným klientom je popísané nižšie
|
||||
|
||||
TODO:</br>
|
||||
:white_square_button: doplniť popis pre zmenu podporovaných certifikátov
|
||||
|
||||
## Klient
|
||||
```
|
||||
sudo apt install python3
|
||||
git clone https://github.com/miracl/core.git
|
||||
*// môžeme preskočiť ak už máme python3 a miracl*
|
||||
cd core/cpp
|
||||
python3 config64.py test
|
||||
cd ../..
|
||||
```
|
||||
- auto-build MIRACL knižnice pre jazyk C++
|
||||
|
||||
```
|
||||
wget https://download.libsodium.org/libsodium/releases/LATEST.tar.gz
|
||||
tar xvf LATEST.tar.gz
|
||||
cd libsodium-stable/
|
||||
./configure
|
||||
make && make check
|
||||
sudo make install
|
||||
```
|
||||
- stiahnutie a inštalácia knižnice libsodium
|
||||
|
||||
```
|
||||
git clone https://github.com/Crypto-TII/TLS1.3.git
|
||||
cd TLS1.3/cpp
|
||||
mkdir -p sal/miracl/includes
|
||||
cp /core/cpp/core.a sal/miracl
|
||||
cp /core/cpp/*.h sal/miracl/includes
|
||||
```
|
||||
|
||||
```
|
||||
cmake -DSAL=MIRACL_SODIUM -D CMAKE_CXX_COMPILER=/usr/bin/gcc
|
||||
cd CMakeFiles/client.dir
|
||||
nano link.txt
|
||||
```
|
||||
- na koniec riadku za prepínač *-lsodium* pridáme prepínač *-lstdc++*
|
||||
|
||||
```
|
||||
cd ../..
|
||||
make
|
||||
./client
|
||||
```
|
||||
TODO:</br>
|
||||
:white_square_button: doplniť popis funkcií podporovaných klientom
|
||||
|
||||
### WINDOWS
|
||||
Systémové a softvérové špecifikácie:</br>
|
||||
- Microsoft Windows 10 Home, build 10.0.19045
|
||||
- gcc version 13.2.0 (MinGW-W64 x86_64-ucrt-posix-seh, built by Brecht Sanders)
|
||||
- Rust version 1.73.0
|
||||
- Python 3.10.8
|
||||
|
||||
## Server
|
||||
https://www.python.org/downloads/windows/
|
||||
- stiahnutie a inštalácia pythonu pre Windows - PATH je možné nastaviť priamo pri inštalácii (inak je nutné nastaviť ju manuálne)
|
||||
- Python3 je tiež možné záskať z Microsoft Storu
|
||||
|
||||
https://github.com/miracl/core/archive/refs/heads/master.zip
|
||||
- stiahnutie MIRACL knižnice (identická s verziou pre Linux, vrátane konfigurácie)
|
||||
|
||||
https://win.rustup.rs/
|
||||
- stiahnutie .exe súboru na rýchlu inštaláciu Rustu a ďalších nástrojov
|
||||
|
||||
```
|
||||
cd core/rust
|
||||
python config64.py test
|
||||
cd ../..
|
||||
```
|
||||
- auto-build MIRACL knižnice prostredníctvom python scriptu
|
||||
|
||||
```
|
||||
cd .\TLS1.3\rust\server\
|
||||
notepad.exe .\Cargo.toml
|
||||
```
|
||||
- v súbore Cargo.toml je nutné správne nalinkovať cestu k zložke *mcore*, ktorá vznikla auto-buildom MIRACL knižnice v predošlom kroku
|
||||
|
||||
```
|
||||
cargo build
|
||||
cargo run
|
||||
```
|
||||
- príkazy na kompiláciu serveru a jeho následné spustenie
|
||||
- správne spustenie serveru môžeme overiť na adrese https://127.0.0.1:4433
|
||||
|
||||
## Client
|
||||
|
||||
```
|
||||
cd core\cpp
|
||||
python config64.py test
|
||||
cd ../..
|
||||
```
|
||||
|
||||
- https://download.libsodium.org/libsodium/releases/libsodium-1.0.19-stable-mingw.tar.gz </br>
|
||||
:white_check_mark: doplniť postup linkovania knižnice s prekladačom gcc
|
||||
|
||||
- nájdeme miesto, kde sme uložili knižnicu WinLibs a prejdeme do zložky */mingw64/lib/gcc/x86_64-w64-mingw32/11.2.0/*
|
||||
|
||||
- do tejto zložky skopírujeme súbor libsodium.a zo stiahnutého balíka knižnice libsodium */libsodium-1.0.19-stable-mingw.tar/libsodium-win64/lib/*
|
||||
- následne skopírujeme celý obsah */libsodium-1.0.19-stable-mingw.tar/libsodium-win64/include/* do zložky */mingw64/lib/gcc/x86_64-w64-mingw32/11.2.0/include/*
|
||||
|
||||
|
||||
```
|
||||
cd TLS1.3/cpp
|
||||
mkdir -p sal/miracl/includes
|
||||
cp /core/cpp/core.a sal/miracl
|
||||
cp /core/cpp/*.h sal/miracl/includes
|
||||
```
|
||||
|
||||
```
|
||||
cmake -DSAL=MIRACL_SODIUM -D CMAKE_CXX_COMPILER=D:/mingw64/bin/gcc.exe -G "Unix Makefiles"
|
||||
```
|
||||
|
||||
:white_square_button: doplniť úpravy v súboroch tls_sockets.h a tls_sockets.cpp
|
||||
- tls_sockets.h:22:10: fatal error: sys/socket.h: No such file or directory #include <sys/socket.h>
|
||||
- tls_sockets.cpp:31:47: error: cannot convert 'timeval*' to 'const char*' setsockopt(sock, SOL_SOCKET, SO_RCVTIMEO, &timeout, sizeof(timeout));
|
||||
|
||||
```
|
||||
cd CMakeFiles/client.dir
|
||||
```
|
||||
- do súboru *linkLibs.rsp* pridáme prepínače *-lws2_32* a *-lstdc++*
|
||||
|
||||
```
|
||||
cd ../..
|
||||
make
|
||||
```
|
||||
|
||||
## References
|
Loading…
Reference in New Issue
Block a user