Hello Freedom
This commit is contained in:
commit
7009cb27c4
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
infidel-code/.cipher/
|
22
README.md
Normal file
22
README.md
Normal file
@ -0,0 +1,22 @@
|
||||
# Restructure
|
||||
|
||||
## References
|
||||
|
||||
- ![Implementation 1](http://192.168.2.34/infidel/NTRU_IoT/raw/branch/master/assets/NTRU_IoT_Marcelino.pdf)
|
||||
- ![Implementation 2](http://192.168.2.34/infidel/NTRU_IoT/raw/branch/master/assets/IEMS_GBS.pdf)
|
||||
- ![Logic Gate](http://192.168.2.34/infidel/NTRU_IoT/raw/branch/master/assets/ntru.png)
|
||||
|
||||
## Infidel Code
|
||||
|
||||
- EES 593 enc, dec, genkey
|
||||
- EES 401 enc, dec, genkey
|
||||
- Python Wrapper
|
||||
|
||||
## Legacy Code
|
||||
|
||||
- Main Source
|
||||
- Test Libs
|
||||
- Weirds Things
|
||||
|
||||
## Future Implementation : esp, atmel
|
||||
![Runner](http://192.168.2.34/infidel/NTRU_IoT/raw/branch/master/assets/High-speed-NTRU-architecture.png)
|
BIN
assets/High-speed-NTRU-architecture.png
Normal file
BIN
assets/High-speed-NTRU-architecture.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 42 KiB |
BIN
assets/IEMS_GBS.pdf
Normal file
BIN
assets/IEMS_GBS.pdf
Normal file
Binary file not shown.
BIN
assets/NTRU-encryption-decryption-architecture_W640.jpg
Normal file
BIN
assets/NTRU-encryption-decryption-architecture_W640.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 23 KiB |
BIN
assets/NTRU_IoT_Marcelino.pdf
Normal file
BIN
assets/NTRU_IoT_Marcelino.pdf
Normal file
Binary file not shown.
BIN
assets/ntru.png
Normal file
BIN
assets/ntru.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 313 KiB |
BIN
assets/runner.png
Normal file
BIN
assets/runner.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 16 KiB |
0
infidel-code/EES401/.deps/.dirstamp
Normal file
0
infidel-code/EES401/.deps/.dirstamp
Normal file
155
infidel-code/EES401/.deps/URG_decrypt.Po
Normal file
155
infidel-code/EES401/.deps/URG_decrypt.Po
Normal file
@ -0,0 +1,155 @@
|
||||
sample/URG_decrypt.o: sample/URG_decrypt.c /usr/include/stdc-predef.h \
|
||||
/usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/arm-linux-gnueabihf/sys/cdefs.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/wordsize.h \
|
||||
/usr/include/arm-linux-gnueabihf/gnu/stubs.h \
|
||||
/usr/include/arm-linux-gnueabihf/gnu/stubs-hard.h \
|
||||
/usr/lib/gcc/arm-linux-gnueabihf/6/include/stddef.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/types.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/typesizes.h /usr/include/libio.h \
|
||||
/usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/arm-linux-gnueabihf/6/include/stdarg.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdio_lim.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/sys_errlist.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdio.h /usr/include/stdlib.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/waitflags.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/waitstatus.h \
|
||||
/usr/include/arm-linux-gnueabihf/sys/types.h /usr/include/time.h \
|
||||
/usr/include/endian.h /usr/include/arm-linux-gnueabihf/bits/endian.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/byteswap.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/byteswap-16.h \
|
||||
/usr/include/arm-linux-gnueabihf/sys/select.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/select.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/sigset.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/time.h \
|
||||
/usr/include/arm-linux-gnueabihf/sys/sysmacros.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/pthreadtypes.h \
|
||||
/usr/include/alloca.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdlib-bsearch.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdlib-float.h \
|
||||
/usr/include/string.h /usr/include/xlocale.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/string.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/string2.h /usr/include/unistd.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/posix_opt.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/environments.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/confname.h /usr/include/getopt.h \
|
||||
/usr/include/fcntl.h /usr/include/arm-linux-gnueabihf/bits/fcntl.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/fcntl-linux.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/stat.h include/ntru_crypto.h \
|
||||
include/ntru_crypto_platform.h \
|
||||
/usr/lib/gcc/arm-linux-gnueabihf/6/include/stdint.h \
|
||||
/usr/include/stdint.h /usr/include/arm-linux-gnueabihf/bits/wchar.h \
|
||||
/usr/include/assert.h include/ntru_crypto_drbg.h \
|
||||
include/ntru_crypto_error.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
/usr/include/stdio.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/sys/cdefs.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/wordsize.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/gnu/stubs.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/gnu/stubs-hard.h:
|
||||
|
||||
/usr/lib/gcc/arm-linux-gnueabihf/6/include/stddef.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/types.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/typesizes.h:
|
||||
|
||||
/usr/include/libio.h:
|
||||
|
||||
/usr/include/_G_config.h:
|
||||
|
||||
/usr/include/wchar.h:
|
||||
|
||||
/usr/lib/gcc/arm-linux-gnueabihf/6/include/stdarg.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdio_lim.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/sys_errlist.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdio.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/waitflags.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/waitstatus.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/sys/types.h:
|
||||
|
||||
/usr/include/time.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/endian.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/byteswap.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/sys/select.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/select.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/sigset.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/time.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/sys/sysmacros.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdlib-bsearch.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdlib-float.h:
|
||||
|
||||
/usr/include/string.h:
|
||||
|
||||
/usr/include/xlocale.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/string.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/string2.h:
|
||||
|
||||
/usr/include/unistd.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/posix_opt.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/environments.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/confname.h:
|
||||
|
||||
/usr/include/getopt.h:
|
||||
|
||||
/usr/include/fcntl.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/fcntl.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/fcntl-linux.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/stat.h:
|
||||
|
||||
include/ntru_crypto.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
||||
|
||||
/usr/lib/gcc/arm-linux-gnueabihf/6/include/stdint.h:
|
||||
|
||||
/usr/include/stdint.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/wchar.h:
|
||||
|
||||
/usr/include/assert.h:
|
||||
|
||||
include/ntru_crypto_drbg.h:
|
||||
|
||||
include/ntru_crypto_error.h:
|
155
infidel-code/EES401/.deps/bin_URG_enc-URG_decrypt.Po
Normal file
155
infidel-code/EES401/.deps/bin_URG_enc-URG_decrypt.Po
Normal file
@ -0,0 +1,155 @@
|
||||
sample/bin_URG_enc-URG_decrypt.o: sample/URG_decrypt.c \
|
||||
/usr/include/stdc-predef.h /usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/arm-linux-gnueabihf/sys/cdefs.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/wordsize.h \
|
||||
/usr/include/arm-linux-gnueabihf/gnu/stubs.h \
|
||||
/usr/include/arm-linux-gnueabihf/gnu/stubs-hard.h \
|
||||
/usr/lib/gcc/arm-linux-gnueabihf/6/include/stddef.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/types.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/typesizes.h /usr/include/libio.h \
|
||||
/usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/arm-linux-gnueabihf/6/include/stdarg.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdio_lim.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/sys_errlist.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdio.h /usr/include/stdlib.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/waitflags.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/waitstatus.h \
|
||||
/usr/include/arm-linux-gnueabihf/sys/types.h /usr/include/time.h \
|
||||
/usr/include/endian.h /usr/include/arm-linux-gnueabihf/bits/endian.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/byteswap.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/byteswap-16.h \
|
||||
/usr/include/arm-linux-gnueabihf/sys/select.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/select.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/sigset.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/time.h \
|
||||
/usr/include/arm-linux-gnueabihf/sys/sysmacros.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/pthreadtypes.h \
|
||||
/usr/include/alloca.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdlib-bsearch.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdlib-float.h \
|
||||
/usr/include/string.h /usr/include/xlocale.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/string.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/string2.h /usr/include/unistd.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/posix_opt.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/environments.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/confname.h /usr/include/getopt.h \
|
||||
/usr/include/fcntl.h /usr/include/arm-linux-gnueabihf/bits/fcntl.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/fcntl-linux.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/stat.h include/ntru_crypto.h \
|
||||
include/ntru_crypto_platform.h \
|
||||
/usr/lib/gcc/arm-linux-gnueabihf/6/include/stdint.h \
|
||||
/usr/include/stdint.h /usr/include/arm-linux-gnueabihf/bits/wchar.h \
|
||||
/usr/include/assert.h include/ntru_crypto_drbg.h \
|
||||
include/ntru_crypto_error.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
/usr/include/stdio.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/sys/cdefs.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/wordsize.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/gnu/stubs.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/gnu/stubs-hard.h:
|
||||
|
||||
/usr/lib/gcc/arm-linux-gnueabihf/6/include/stddef.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/types.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/typesizes.h:
|
||||
|
||||
/usr/include/libio.h:
|
||||
|
||||
/usr/include/_G_config.h:
|
||||
|
||||
/usr/include/wchar.h:
|
||||
|
||||
/usr/lib/gcc/arm-linux-gnueabihf/6/include/stdarg.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdio_lim.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/sys_errlist.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdio.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/waitflags.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/waitstatus.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/sys/types.h:
|
||||
|
||||
/usr/include/time.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/endian.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/byteswap.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/sys/select.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/select.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/sigset.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/time.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/sys/sysmacros.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdlib-bsearch.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdlib-float.h:
|
||||
|
||||
/usr/include/string.h:
|
||||
|
||||
/usr/include/xlocale.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/string.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/string2.h:
|
||||
|
||||
/usr/include/unistd.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/posix_opt.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/environments.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/confname.h:
|
||||
|
||||
/usr/include/getopt.h:
|
||||
|
||||
/usr/include/fcntl.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/fcntl.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/fcntl-linux.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/stat.h:
|
||||
|
||||
include/ntru_crypto.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
||||
|
||||
/usr/lib/gcc/arm-linux-gnueabihf/6/include/stdint.h:
|
||||
|
||||
/usr/include/stdint.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/wchar.h:
|
||||
|
||||
/usr/include/assert.h:
|
||||
|
||||
include/ntru_crypto_drbg.h:
|
||||
|
||||
include/ntru_crypto_error.h:
|
155
infidel-code/EES401/.deps/sample_NTRUEncrypt.Po
Normal file
155
infidel-code/EES401/.deps/sample_NTRUEncrypt.Po
Normal file
@ -0,0 +1,155 @@
|
||||
sample/sample_NTRUEncrypt.o: sample/sample_NTRUEncrypt.c \
|
||||
/usr/include/stdc-predef.h /usr/include/stdio.h /usr/include/features.h \
|
||||
/usr/include/arm-linux-gnueabihf/sys/cdefs.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/wordsize.h \
|
||||
/usr/include/arm-linux-gnueabihf/gnu/stubs.h \
|
||||
/usr/include/arm-linux-gnueabihf/gnu/stubs-hard.h \
|
||||
/usr/lib/gcc/arm-linux-gnueabihf/6/include/stddef.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/types.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/typesizes.h /usr/include/libio.h \
|
||||
/usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/usr/lib/gcc/arm-linux-gnueabihf/6/include/stdarg.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdio_lim.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/sys_errlist.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdio.h /usr/include/stdlib.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/waitflags.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/waitstatus.h \
|
||||
/usr/include/arm-linux-gnueabihf/sys/types.h /usr/include/time.h \
|
||||
/usr/include/endian.h /usr/include/arm-linux-gnueabihf/bits/endian.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/byteswap.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/byteswap-16.h \
|
||||
/usr/include/arm-linux-gnueabihf/sys/select.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/select.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/sigset.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/time.h \
|
||||
/usr/include/arm-linux-gnueabihf/sys/sysmacros.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/pthreadtypes.h \
|
||||
/usr/include/alloca.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdlib-bsearch.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdlib-float.h \
|
||||
/usr/include/string.h /usr/include/xlocale.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/string.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/string2.h /usr/include/unistd.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/posix_opt.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/environments.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/confname.h /usr/include/getopt.h \
|
||||
/usr/include/fcntl.h /usr/include/arm-linux-gnueabihf/bits/fcntl.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/fcntl-linux.h \
|
||||
/usr/include/arm-linux-gnueabihf/bits/stat.h include/ntru_crypto.h \
|
||||
include/ntru_crypto_platform.h \
|
||||
/usr/lib/gcc/arm-linux-gnueabihf/6/include/stdint.h \
|
||||
/usr/include/stdint.h /usr/include/arm-linux-gnueabihf/bits/wchar.h \
|
||||
/usr/include/assert.h include/ntru_crypto_drbg.h \
|
||||
include/ntru_crypto_error.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
/usr/include/stdio.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/sys/cdefs.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/wordsize.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/gnu/stubs.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/gnu/stubs-hard.h:
|
||||
|
||||
/usr/lib/gcc/arm-linux-gnueabihf/6/include/stddef.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/types.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/typesizes.h:
|
||||
|
||||
/usr/include/libio.h:
|
||||
|
||||
/usr/include/_G_config.h:
|
||||
|
||||
/usr/include/wchar.h:
|
||||
|
||||
/usr/lib/gcc/arm-linux-gnueabihf/6/include/stdarg.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdio_lim.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/sys_errlist.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdio.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/waitflags.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/waitstatus.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/sys/types.h:
|
||||
|
||||
/usr/include/time.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/endian.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/byteswap.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/sys/select.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/select.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/sigset.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/time.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/sys/sysmacros.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdlib-bsearch.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/stdlib-float.h:
|
||||
|
||||
/usr/include/string.h:
|
||||
|
||||
/usr/include/xlocale.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/string.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/string2.h:
|
||||
|
||||
/usr/include/unistd.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/posix_opt.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/environments.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/confname.h:
|
||||
|
||||
/usr/include/getopt.h:
|
||||
|
||||
/usr/include/fcntl.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/fcntl.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/fcntl-linux.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/stat.h:
|
||||
|
||||
include/ntru_crypto.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
||||
|
||||
/usr/lib/gcc/arm-linux-gnueabihf/6/include/stdint.h:
|
||||
|
||||
/usr/include/stdint.h:
|
||||
|
||||
/usr/include/arm-linux-gnueabihf/bits/wchar.h:
|
||||
|
||||
/usr/include/assert.h:
|
||||
|
||||
include/ntru_crypto_drbg.h:
|
||||
|
||||
include/ntru_crypto_error.h:
|
0
infidel-code/EES401/.dirstamp
Normal file
0
infidel-code/EES401/.dirstamp
Normal file
173
infidel-code/EES401/URG_Keygen.c
Normal file
173
infidel-code/EES401/URG_Keygen.c
Normal file
@ -0,0 +1,173 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <time.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
#include "ntru_crypto.h"
|
||||
#include "ntru_crypto_drbg.h"
|
||||
#include "test_common.h"
|
||||
|
||||
int main()
|
||||
{
|
||||
|
||||
uint8_t *public_key;
|
||||
uint8_t *private_key;
|
||||
// uint8_t *message;
|
||||
char message[60];
|
||||
uint8_t *ciphertext;
|
||||
uint8_t *plaintext;
|
||||
|
||||
uint16_t max_msg_len; uint16_t public_key_len; /* no. of octets in public key */
|
||||
uint16_t private_key_len; /* no. of octets in private key */
|
||||
uint16_t ciphertext_len; /* no. of octets in ciphertext */
|
||||
uint16_t plaintext_len; /* no. of octets in plaintext */
|
||||
DRBG_HANDLE drbg; /* handle for instantiated DRBG */
|
||||
uint32_t rc; /* return code */
|
||||
|
||||
clock_t clk;
|
||||
|
||||
FILE *Handle=NULL; /* File Handler */
|
||||
struct stat st = {0}; /* Dir Handler */
|
||||
|
||||
NTRU_ENCRYPT_PARAM_SET_ID param_set_id;
|
||||
|
||||
printf("------------------------------------------------\n");
|
||||
printf("Enter Message \t\t: ");
|
||||
// message = "Hello Bastard...";
|
||||
fgets(message, 60, stdin);
|
||||
|
||||
printf("Your message is \t: %s\n",message);
|
||||
param_set_id = PARAM_SET_IDS[0]; /* 0 : 401; 1 : 449; 14 : 593; */
|
||||
|
||||
fprintf(stderr, "Testing parameter set \t: %s\n", ntru_encrypt_get_param_set_name(param_set_id));
|
||||
printf("------------------------------------------------\n");
|
||||
fflush (stderr);
|
||||
rc = ntru_crypto_drbg_external_instantiate(
|
||||
(RANDOM_BYTES_FN) &randombytes, &drbg);
|
||||
|
||||
if (rc != DRBG_OK)
|
||||
{
|
||||
fprintf(stderr,"\tError: An error occurred instantiating the DRBG\n");
|
||||
}
|
||||
|
||||
rc = ntru_crypto_ntru_encrypt_keygen(drbg, param_set_id, &public_key_len,
|
||||
NULL, &private_key_len, NULL);
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
ntru_crypto_drbg_uninstantiate(drbg);
|
||||
fprintf(stderr,"\tError: An error occurred getting the key lengths\n");
|
||||
}
|
||||
|
||||
public_key = (uint8_t *)malloc(public_key_len * sizeof(uint8_t));
|
||||
private_key = (uint8_t *)malloc(private_key_len * sizeof(uint8_t));
|
||||
|
||||
clk = clock();
|
||||
rc = ntru_crypto_ntru_encrypt_keygen(drbg, param_set_id, &public_key_len,
|
||||
public_key,
|
||||
&private_key_len,
|
||||
private_key);
|
||||
clk = clock() - clk;
|
||||
|
||||
if (stat("./keys", &st) == -1) {
|
||||
mkdir("./keys", 0700);
|
||||
printf("Key directory created...\n");
|
||||
|
||||
}
|
||||
|
||||
Handle=fopen("keys/key-401.pub", "wb");
|
||||
if(Handle!=NULL) {
|
||||
printf("-> Writing Pub Key...\n");
|
||||
fwrite(public_key, public_key_len, 1, Handle);
|
||||
printf("-> Pub Key written...\n");
|
||||
fclose(Handle);
|
||||
}
|
||||
|
||||
Handle=fopen("keys/key-401.priv", "wb");
|
||||
if(Handle!=NULL) {
|
||||
printf("-> Writing Priv Key...\n");
|
||||
fwrite(private_key, private_key_len, 1, Handle);
|
||||
printf("-> Private Key written...\n");
|
||||
fclose(Handle);
|
||||
}
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
ntru_crypto_drbg_uninstantiate(drbg);
|
||||
free(public_key);
|
||||
free(private_key);
|
||||
fprintf(stderr,"\tError: An error occurred during key generation\n");
|
||||
}
|
||||
|
||||
|
||||
rc = ntru_crypto_ntru_encrypt(drbg, public_key_len, public_key, 0, NULL,
|
||||
&ciphertext_len, NULL);
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
fprintf(stderr,"\tError: Bad public key");
|
||||
}
|
||||
|
||||
rc = ntru_crypto_ntru_decrypt(private_key_len, private_key, 0, NULL,
|
||||
&max_msg_len, NULL);
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
fprintf(stderr,"\tError: Bad private key");
|
||||
}
|
||||
|
||||
//message = (uint8_t *) malloc(max_msg_len * sizeof(uint8_t));
|
||||
printf("------------------------------------------------\n");
|
||||
printf("Max message block \t: %d\n", max_msg_len * sizeof(uint8_t));
|
||||
|
||||
ciphertext = (uint8_t *) malloc(ciphertext_len * sizeof(uint8_t));
|
||||
|
||||
plaintext = (uint8_t *) malloc(max_msg_len * sizeof(uint8_t));
|
||||
|
||||
plaintext_len = max_msg_len;
|
||||
|
||||
//randombytes(message, max_msg_len);
|
||||
//randombytes(ciphertext, ciphertext_len);
|
||||
//randombytes(plaintext, plaintext_len);
|
||||
|
||||
|
||||
clk = clock();
|
||||
rc = ntru_crypto_ntru_encrypt(drbg, public_key_len, public_key,
|
||||
max_msg_len, message, &ciphertext_len, ciphertext);
|
||||
clk = clock() - clk;
|
||||
if (rc != NTRU_OK){
|
||||
fprintf(stderr, "\tError: Encryption error %x\n", rc);
|
||||
}
|
||||
|
||||
//printf("Cipher %s\n", ciphertext);
|
||||
|
||||
|
||||
clk = clock();
|
||||
rc = ntru_crypto_ntru_decrypt(private_key_len, private_key,
|
||||
ciphertext_len, ciphertext,
|
||||
&plaintext_len, plaintext);
|
||||
clk = clock() - clk;
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
fprintf(stderr, "\tError: Decryption error %x\n", rc);
|
||||
}
|
||||
|
||||
printf("Decryption result \t: %s\n", plaintext);
|
||||
|
||||
if(plaintext_len != max_msg_len || memcmp(plaintext,message,max_msg_len))
|
||||
{
|
||||
fprintf(stderr,
|
||||
"\tError: Decryption result does not match original plaintext\n");
|
||||
}
|
||||
|
||||
ntru_crypto_drbg_uninstantiate(drbg);
|
||||
//free(message);
|
||||
//free(public_key);
|
||||
//free(private_key);
|
||||
//free(plaintext);
|
||||
//free(ciphertext);
|
||||
|
||||
fprintf(stderr, "pk %d, sk %d, ct %d bytes\n",
|
||||
public_key_len, private_key_len, ciphertext_len);
|
||||
printf("------------------------------------------------\n");
|
||||
fprintf(stderr, "\n");
|
||||
}
|
75
infidel-code/EES401/URG_decrypt.c
Normal file
75
infidel-code/EES401/URG_decrypt.c
Normal file
@ -0,0 +1,75 @@
|
||||
#include "ntru_crypto.h"
|
||||
#include <fcntl.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <time.h>
|
||||
#include <unistd.h>
|
||||
|
||||
uint32_t get_rand(uint8_t *out, uint32_t num_bytes) {
|
||||
int rng = 50;
|
||||
int urnd = open("/dev/random", O_RDONLY);
|
||||
read(urnd, &rng, sizeof(int));
|
||||
*out = urnd;
|
||||
close(urnd);
|
||||
return 0;
|
||||
}
|
||||
char *main(char *user_input) {
|
||||
uint8_t public_key[557]; /* sized for EES401EP2 */
|
||||
uint16_t public_key_len; /* no. of octets in public key */
|
||||
uint8_t private_key[638]; /* sized for EES401EP2 */
|
||||
uint16_t private_key_len; /* no. of octets in private key */
|
||||
uint16_t expected_private_key_len;
|
||||
uint16_t expected_encoded_public_key_len;
|
||||
uint8_t encoded_public_key[593]; /* sized for EES401EP2 */
|
||||
uint16_t encoded_public_key_len; /* no. of octets in encoded public key */
|
||||
uint8_t ciphertext[552]; /* sized fof EES401EP2 */
|
||||
uint16_t ciphertext_len; /* no. of octets in ciphertext */
|
||||
uint8_t plaintext[16]; /* size of AES-128 key */
|
||||
uint16_t plaintext_len; /* no. of octets in plaintext */
|
||||
uint8_t *next = NULL; /* points to next cert field to parse */
|
||||
uint32_t next_len; /* no. of octets it next */
|
||||
DRBG_HANDLE drbg; /* handle for instantiated DRBG */
|
||||
uint32_t rc; /* return code */
|
||||
bool error = FALSE; /* records if error occurred */
|
||||
FILE *Handle = NULL; /* File Handle for writing NTRU key to file */
|
||||
char *filename[33];
|
||||
char **ptr = filename;
|
||||
char buffer[638];
|
||||
char *buffer2 = 0;
|
||||
char *c = malloc(16);
|
||||
int r;
|
||||
int s;
|
||||
double cpu_time_used;
|
||||
rc = ntru_crypto_drbg_uninstantiate(drbg);
|
||||
FILE *f = fopen("keys/key-401.priv", "rb");
|
||||
r = fread(buffer, 1, 638, f);
|
||||
fclose(f);
|
||||
|
||||
// printf("C Log DEC: %d bytes Private Key\n", r);
|
||||
// printf("C Log DEC: user_input Len %d\n", sizeof(user_input));
|
||||
|
||||
rc = ntru_crypto_ntru_decrypt(r, buffer, 552, user_input, &plaintext_len,
|
||||
NULL);
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
printf("ERROR 1\n");
|
||||
|
||||
rc = ntru_crypto_ntru_decrypt(r, buffer, 552, user_input, &plaintext_len,
|
||||
plaintext);
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
printf("ERROR 2\n");
|
||||
|
||||
// printf("C Log DEC : your plain: %s\n", plaintext);
|
||||
// printf("C Log DEC : your plain LEN: %d\n", plaintext_len);
|
||||
// printf("your time spent: %lf\n", cpu_time_used);
|
||||
// snprintf(c, sizeof(c), "%s", plaintext);
|
||||
strcpy(c, plaintext);
|
||||
return c;
|
||||
|
||||
error:
|
||||
printf("PROBLEM BUDDY %d\n", rc);
|
||||
exit(EXIT_FAILURE);
|
||||
return 0;
|
||||
}
|
116
infidel-code/EES401/URG_encrypt.c
Normal file
116
infidel-code/EES401/URG_encrypt.c
Normal file
@ -0,0 +1,116 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
#include <fcntl.h>
|
||||
#include "ntru_crypto.h"
|
||||
#include <time.h>
|
||||
#include <sys/stat.h>
|
||||
#include "ntru_crypto_drbg.h"
|
||||
#include "test_common.h"
|
||||
|
||||
uint8_t new_rand(uint8_t *out, uint32_t num_bytes)
|
||||
{
|
||||
int rng;
|
||||
FILE *fpointer;
|
||||
fpointer = fopen("/dev/random", "rb");
|
||||
fread(&rng, sizeof(int), 1, fpointer);
|
||||
*out = rng;
|
||||
fclose(fpointer);
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint8_t get_rand(uint8_t *out, uint32_t num_bytes)
|
||||
{
|
||||
int rng = 10;
|
||||
int urnd = open("/dev/random", "rb");
|
||||
read(urnd, &rng, sizeof(int));
|
||||
*out = urnd;
|
||||
close(urnd);
|
||||
return 0;
|
||||
}
|
||||
|
||||
double main(char *user_input, char *i )
|
||||
{
|
||||
uint8_t public_key[557]; /* sized for EES401EP2 */
|
||||
uint16_t public_key_len; /* no. of octets in public key */
|
||||
uint16_t private_key_len; /* no. of octets in private key */
|
||||
uint8_t private_key[607]; /* sized for EES401EP2 */
|
||||
uint8_t encoded_public_key[593]; /* sized for EES401EP2 */
|
||||
uint16_t encoded_public_key_len; /* no. of octets in encoded public key */
|
||||
uint8_t ciphertext[552]; /* sized fof EES401EP2 */
|
||||
uint16_t ciphertext_len; /* no. of octets in ciphertext */
|
||||
uint8_t *next = NULL; /* points to next cert field to parse */
|
||||
uint32_t next_len; /* no. of octets it next */
|
||||
DRBG_HANDLE drbg; /* handle for instantiated DRBG */
|
||||
uint32_t rc; /* return code */
|
||||
bool error = FALSE; /* records if error occurred */
|
||||
FILE *Handle=NULL; /* File Handle for writing NTRU key to file */
|
||||
char *filename[33];
|
||||
char **ptr = filename;
|
||||
char buffer[557];
|
||||
char *c;
|
||||
char *f_name = ".cipher/ees401/cipher_";
|
||||
char *f_ext = ".dat";
|
||||
char *f_fin;
|
||||
char f_spec[strlen(f_name)+strlen(f_ext)+5];
|
||||
int r;
|
||||
double cpu_time_used;
|
||||
clock_t time_s, time_e;
|
||||
struct stat st = {0}; /* Dir Handler */
|
||||
NTRU_ENCRYPT_PARAM_SET_ID param_set_id;
|
||||
param_set_id = PARAM_SET_IDS[1]; /* 0 : 401; 1 : 449; 14 : 593; */
|
||||
|
||||
FILE *f = fopen("keys/key-401.pub", "r");
|
||||
r = fread(buffer, 1, 557, f);
|
||||
fclose(f);
|
||||
|
||||
if (stat(".cipher/ees401", &st) == -1) {
|
||||
mkdir(".cipher/ees401", 0700);
|
||||
printf("Cipher directory created...\n");
|
||||
|
||||
}
|
||||
|
||||
// rc = ntru_crypto_drbg_external_instantiate(&new_rand, &drbg);
|
||||
fprintf(stderr, "Testing parameter set \t: %s\n", ntru_encrypt_get_param_set_name(param_set_id));
|
||||
rc = ntru_crypto_drbg_external_instantiate(
|
||||
(RANDOM_BYTES_FN) &randombytes, &drbg);
|
||||
if (rc != DRBG_OK)
|
||||
{
|
||||
printf("Error 1\n");
|
||||
goto error;
|
||||
}
|
||||
|
||||
rc = ntru_crypto_ntru_encrypt(drbg, r, buffer, 32, user_input, &ciphertext_len, NULL);
|
||||
if (rc != DRBG_OK)
|
||||
{
|
||||
printf("Error 2\n");
|
||||
goto error;
|
||||
}
|
||||
|
||||
time_s = clock();
|
||||
rc = ntru_crypto_ntru_encrypt(drbg, r, buffer, 32, user_input, &ciphertext_len, ciphertext);
|
||||
time_e = clock();
|
||||
|
||||
cpu_time_used = (float)(time_e - time_s) / CLOCKS_PER_SEC;
|
||||
if (rc != DRBG_OK)
|
||||
{
|
||||
printf("Error 3\n");
|
||||
goto error;
|
||||
}
|
||||
|
||||
snprintf(f_spec, sizeof(f_spec), "%s%s%s", f_name, i, f_ext);
|
||||
printf("File destination : ");
|
||||
printf("%s \n",f_spec);
|
||||
Handle=fopen(f_spec, "wb");
|
||||
fwrite(ciphertext, sizeof(ciphertext), 1, Handle);
|
||||
fclose(Handle);
|
||||
// free(f_spec);
|
||||
// strcpy(ret_str, ciphertext);
|
||||
return cpu_time_used;
|
||||
|
||||
error:
|
||||
printf("ERROR %x\n", rc);
|
||||
return 0;
|
||||
}
|
||||
|
113
infidel-code/EES401/my_sample.c
Normal file
113
infidel-code/EES401/my_sample.c
Normal file
@ -0,0 +1,113 @@
|
||||
#include "ntru_crypto.h"
|
||||
#include <fcntl.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
|
||||
// typedef uint32_t (*urnd)(uint8_t *out, uint32_t num_bytes);
|
||||
// static uint8_t const aes_key[] = "Decrypt me, WTF";
|
||||
uint32_t get_rand(uint8_t *out, uint32_t num_bytes) {
|
||||
int rng = 112;
|
||||
int urnd = open("/dev/random", O_RDONLY);
|
||||
read(urnd, &rng, sizeof(int));
|
||||
*out = urnd;
|
||||
close(urnd);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int main(void) {
|
||||
|
||||
// uint8_t public_key[557];
|
||||
uint8_t public_key[557]; /* sized for EES401EP2 */
|
||||
uint16_t public_key_len; /* no. of octets in public key */
|
||||
uint8_t private_key[607]; /* sized for EES401EP2 */
|
||||
uint16_t private_key_len; /* no. of octets in private key */
|
||||
uint16_t expected_private_key_len;
|
||||
uint16_t expected_encoded_public_key_len;
|
||||
uint8_t encoded_public_key[593]; /* sized for EES401EP2 */
|
||||
uint16_t encoded_public_key_len; /* no. of octets in encoded public key */
|
||||
uint8_t ciphertext[552]; /* sized fof EES401EP2 */
|
||||
uint16_t ciphertext_len; /* no. of octets in ciphertext */
|
||||
uint8_t plaintext[16]; /* size of AES-128 key */
|
||||
uint16_t plaintext_len; /* no. of octets in plaintext */
|
||||
uint8_t *next = NULL; /* points to next cert field to parse */
|
||||
uint32_t next_len; /* no. of octets it next */
|
||||
DRBG_HANDLE drbg; /* handle for instantiated DRBG */
|
||||
uint32_t rc; /* return code */
|
||||
bool error = FALSE; /* records if error occurred */
|
||||
FILE *Handle = NULL; /* File Handle for writing NTRU key to file */
|
||||
|
||||
rc = ntru_crypto_drbg_external_instantiate(&get_rand, &drbg);
|
||||
|
||||
if (rc != DRBG_OK)
|
||||
goto error;
|
||||
|
||||
rc = ntru_crypto_ntru_encrypt_keygen(drbg, NTRU_EES401EP2, &public_key_len,
|
||||
NULL, &private_key_len, NULL);
|
||||
|
||||
if (rc != NTRU_OK) {
|
||||
error = TRUE;
|
||||
}
|
||||
expected_private_key_len = private_key_len;
|
||||
rc = ntru_crypto_ntru_encrypt_keygen(drbg, NTRU_EES401EP2, &public_key_len,
|
||||
public_key, &private_key_len,
|
||||
private_key);
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
error = TRUE;
|
||||
|
||||
if (expected_private_key_len != private_key_len) {
|
||||
fprintf(stderr, "PRivate key length is different\n");
|
||||
error = TRUE;
|
||||
}
|
||||
|
||||
printf("Key sucessfully generated. \n");
|
||||
|
||||
rc = ntru_crypto_drbg_uninstantiate(drbg);
|
||||
if ((rc != DRBG_OK) || error) {
|
||||
error = TRUE;
|
||||
}
|
||||
|
||||
printf("KEY DRBG Success. \n");
|
||||
|
||||
Handle = fopen("Nino-ntru-key.raw", "wb");
|
||||
if (Handle != NULL) {
|
||||
printf("Writing Pirvatkey\n");
|
||||
fwrite(private_key, private_key_len, 1, Handle);
|
||||
fclose(Handle);
|
||||
}
|
||||
Handle = fopen("Nino-ntru-pubkey.raw", "wb");
|
||||
if (Handle != NULL) {
|
||||
printf("Writing Publickey\n");
|
||||
fwrite(public_key, public_key_len, 1, Handle);
|
||||
fclose(Handle);
|
||||
}
|
||||
|
||||
rc = ntru_crypto_ntru_encrypt_publicKey2SubjectPublicKeyInfo(
|
||||
public_key_len, public_key, &encoded_public_key_len, NULL);
|
||||
if (rc != NTRU_OK)
|
||||
goto error;
|
||||
printf("DER encoded, sized requierd %d . \n", encoded_public_ket_len);
|
||||
expected_encoded_public_key_len = encoded_public_key_len;
|
||||
rc = ntru_crypto_ntru_encrypt_publicKey2SubjectPublicKeyInfo(
|
||||
public_key_len, public_key, &encoded_public_key_len, encoded_public_key);
|
||||
|
||||
if (expected_encoded_public_key_len != encoded_public_key_len) {
|
||||
fprintf(stderr, "Different encoded pub key detected\n");
|
||||
error = TRUE;
|
||||
}
|
||||
|
||||
printf("Pub DER Encoding success\n");
|
||||
|
||||
rc = ntru_crypto_ntru_encrypt(dbrg, public_key_len, public_key,
|
||||
sizeof(aes_key), aes_key, &ciphertext_len,
|
||||
ciphertext);
|
||||
|
||||
printf("%s\n", ciphertext);
|
||||
printf("Done BLyat!!!!\n");
|
||||
|
||||
error:
|
||||
printf("ERROR %x\n", rc);
|
||||
return 1;
|
||||
}
|
BIN
infidel-code/EES401/ntru_pub.raw
Normal file
BIN
infidel-code/EES401/ntru_pub.raw
Normal file
Binary file not shown.
209
infidel-code/EES401/sample_NTRUEncrypt.c
Normal file
209
infidel-code/EES401/sample_NTRUEncrypt.c
Normal file
@ -0,0 +1,209 @@
|
||||
#include <stdio.h>
|
||||
#include <time.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
#include <fcntl.h>
|
||||
#include "ntru_crypto.h"
|
||||
#include "ntru_crypto_drbg.h"
|
||||
#include "test_common.h"
|
||||
|
||||
//typedef uint32_t (*urnd)(uint8_t *out, uint32_t num_bytes);
|
||||
static uint8_t const aes_key[] = "0123456789abcdef";
|
||||
uint32_t get_rand(uint8_t *out, uint32_t num_bytes)
|
||||
{
|
||||
int rng = 50;
|
||||
int urnd = open("/dev/random", O_RDONLY);
|
||||
read(urnd, &rng, sizeof(int));
|
||||
*out = urnd;
|
||||
close(urnd);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int main(void) {
|
||||
|
||||
|
||||
//uint8_t public_key[557];
|
||||
double cpu_time_used;
|
||||
uint8_t public_key[557]; /* sized for EES401EP2 */
|
||||
uint16_t public_key_len; /* no. of octets in public key */
|
||||
uint8_t private_key[607]; /* sized for EES401EP2 */
|
||||
uint16_t private_key_len; /* no. of octets in private key */
|
||||
uint16_t expected_private_key_len;
|
||||
uint16_t expected_encoded_public_key_len;
|
||||
uint8_t encoded_public_key[593]; /* sized for EES401EP2 */
|
||||
uint16_t encoded_public_key_len; /* no. of octets in encoded public key */
|
||||
uint8_t ciphertext[552]; /* sized fof EES401EP2 */
|
||||
uint16_t ciphertext_len; /* no. of octets in ciphertext */
|
||||
uint8_t plaintext[16]; /* size of AES-128 key */
|
||||
uint16_t plaintext_len; /* no. of octets in plaintext */
|
||||
uint8_t *next = NULL; /* points to next cert field to parse */
|
||||
uint32_t next_len; /* no. of octets it next */
|
||||
DRBG_HANDLE drbg; /* handle for instantiated DRBG */
|
||||
uint32_t rc; /* return code */
|
||||
bool error = FALSE; /* records if error occurred */
|
||||
FILE *Handle=NULL; /* File Handle for writing NTRU key to file */
|
||||
clock_t time_s, time_e;
|
||||
|
||||
rc = ntru_crypto_drbg_external_instantiate(&get_rand, &drbg);
|
||||
|
||||
if (rc != DRBG_OK)
|
||||
goto error;
|
||||
|
||||
rc = ntru_crypto_ntru_encrypt_keygen(drbg, NTRU_EES401EP2, &public_key_len, NULL, &private_key_len, NULL);
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
error = TRUE;
|
||||
}
|
||||
|
||||
expected_private_key_len=private_key_len;
|
||||
time_s = clock();
|
||||
rc = ntru_crypto_ntru_encrypt_keygen(drbg, NTRU_EES401EP2, &public_key_len, public_key, &private_key_len, private_key);
|
||||
time_e = clock();
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
error = TRUE;
|
||||
|
||||
if (expected_private_key_len!=private_key_len)
|
||||
{
|
||||
fprintf(stderr, "PRivate key length is different\n");
|
||||
error = TRUE;
|
||||
}
|
||||
|
||||
printf("Key sucessfully generated. \n");
|
||||
|
||||
rc = ntru_crypto_drbg_uninstantiate(drbg);
|
||||
if ((rc != DRBG_OK) || error)
|
||||
{
|
||||
error = TRUE;
|
||||
}
|
||||
|
||||
printf("KEY DRBG Success. \n");
|
||||
|
||||
Handle=fopen("EES401/EES401-ntru-priv.raw","wb");
|
||||
if (Handle!=NULL){
|
||||
printf("Writing Pirvatkey\n");
|
||||
printf("Writing Pirvatkey Length %d\n", private_key_len);
|
||||
fwrite(private_key, private_key_len, 1, Handle);
|
||||
fclose(Handle);
|
||||
}
|
||||
Handle=fopen("EES401/EES401-ntru-pub.raw","wb");
|
||||
if(Handle!=NULL){
|
||||
printf("Writing Publickey\n");
|
||||
printf("Public Key : %d\n", public_key_len);
|
||||
fwrite(public_key, public_key_len, 1, Handle);
|
||||
fclose(Handle);
|
||||
}
|
||||
|
||||
rc = ntru_crypto_ntru_encrypt_publicKey2SubjectPublicKeyInfo(public_key_len, public_key, &encoded_public_key_len, NULL);
|
||||
if (rc != NTRU_OK)
|
||||
goto error;
|
||||
printf("DER encoded, sized requierd %d . \n", encoded_public_key_len);
|
||||
expected_encoded_public_key_len = encoded_public_key_len;
|
||||
rc = ntru_crypto_ntru_encrypt_publicKey2SubjectPublicKeyInfo(public_key_len, public_key, &encoded_public_key_len, encoded_public_key);
|
||||
|
||||
if (expected_encoded_public_key_len!=encoded_public_key_len)
|
||||
{
|
||||
fprintf(stderr, "Different encoded pub key detected\n");
|
||||
error = TRUE;
|
||||
}
|
||||
|
||||
next = encoded_public_key;
|
||||
next_len = encoded_public_key_len;
|
||||
rc = ntru_crypto_ntru_encrypt_subjectPublicKeyInfo2PublicKey(next, &public_key_len, NULL, &next, &next_len);
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
goto error;
|
||||
printf("Pub key buffer must %d\n", public_key_len);
|
||||
|
||||
rc = ntru_crypto_ntru_encrypt_subjectPublicKeyInfo2PublicKey(next, &public_key_len, public_key, &next, &next_len);
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
goto error;
|
||||
|
||||
printf("Pub DER Encoding success\n");
|
||||
|
||||
printf("Encryption Phase \n");
|
||||
rc = ntru_crypto_drbg_external_instantiate(&get_rand, &drbg);
|
||||
|
||||
if (rc != DRBG_OK)
|
||||
goto error;
|
||||
printf("Sucess encrypt\n");
|
||||
rc = ntru_crypto_ntru_encrypt(drbg, public_key_len, public_key, sizeof(aes_key), aes_key, &ciphertext_len, NULL);
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
goto error;
|
||||
printf("String to be encrypted: %s\n", aes_key);
|
||||
|
||||
rc = ntru_crypto_ntru_encrypt(drbg, public_key_len, public_key, sizeof(aes_key), aes_key, &ciphertext_len, ciphertext);
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
goto error;
|
||||
//printf("Ciphertext : %s\n", ciphertext);
|
||||
rc = ntru_crypto_drbg_uninstantiate(drbg);
|
||||
printf("Done BLyat!!!!\n");
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
goto error;
|
||||
|
||||
rc = ntru_crypto_ntru_decrypt(private_key_len, private_key, ciphertext_len,
|
||||
ciphertext, &plaintext_len, NULL);
|
||||
if (rc != NTRU_OK)
|
||||
/* An error occurred requesting the buffer size needed. */
|
||||
goto error;
|
||||
printf("Maximum plaintext buffer size required: %d octets.\n",
|
||||
plaintext_len);
|
||||
|
||||
/* Now we could allocate a buffer of length plaintext_len to hold the
|
||||
* plaintext, but note that plaintext_len has the maximum plaintext
|
||||
* size for the EES401EP2 parameter set. Since we know that we've
|
||||
* received an encrypted AES-128 key in this example, and since we
|
||||
* already have a plaintext buffer as a local variable, we'll just
|
||||
* supply the length of that plaintext buffer for decryption.
|
||||
*/
|
||||
rc = ntru_crypto_ntru_decrypt(private_key_len, private_key, ciphertext_len,
|
||||
ciphertext, &plaintext_len, plaintext);
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
fprintf(stderr,"Error: An error occurred decrypting the AES-128 key.\n");
|
||||
return 1;
|
||||
}
|
||||
printf("AES-128 key decrypted successfully.\n");
|
||||
printf("Decoded plaintext length: %d octets\n",plaintext_len);
|
||||
|
||||
if(plaintext_len!=sizeof(aes_key))
|
||||
{
|
||||
fprintf(stderr,"Error: Decrypted length does not match original plaintext length\n");
|
||||
return 1;
|
||||
}
|
||||
if(memcmp(plaintext,aes_key,sizeof(aes_key)))
|
||||
{
|
||||
fprintf(stderr,"Error: Decrypted plaintext does not match original plaintext\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
Handle=fopen("sample-decoded-plaintext.bin","wb");
|
||||
if(Handle!=NULL)
|
||||
{
|
||||
printf("Writing decoded plaintext to decoded-plaintext.bin\n");
|
||||
printf("Plain text : %s\n", plaintext);
|
||||
fwrite(plaintext,plaintext_len,1,Handle);
|
||||
fclose(Handle);
|
||||
}
|
||||
|
||||
cpu_time_used = (float)(time_e - time_s) / CLOCKS_PER_SEC;
|
||||
printf("Time Keygen NTRU : %lf\n", cpu_time_used);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/* And now the plaintext buffer holds the decrypted AES-128 key. */
|
||||
printf("Sample code completed successfully.\n");
|
||||
error:
|
||||
printf("ERROR %x\n", rc);
|
||||
return 1;
|
||||
|
||||
}
|
174
infidel-code/EES593/URG_Keygen.c
Normal file
174
infidel-code/EES593/URG_Keygen.c
Normal file
@ -0,0 +1,174 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <time.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
#include "ntru_crypto.h"
|
||||
#include "ntru_crypto_drbg.h"
|
||||
#include "test_common.h"
|
||||
|
||||
int main()
|
||||
{
|
||||
|
||||
uint8_t *public_key;
|
||||
uint8_t *private_key;
|
||||
// uint8_t *message;
|
||||
char message[87];
|
||||
uint8_t *ciphertext;
|
||||
uint8_t *plaintext;
|
||||
|
||||
uint16_t max_msg_len; uint16_t public_key_len; /* no. of octets in public key */
|
||||
uint16_t private_key_len; /* no. of octets in private key */
|
||||
uint16_t ciphertext_len; /* no. of octets in ciphertext */
|
||||
uint16_t plaintext_len; /* no. of octets in plaintext */
|
||||
DRBG_HANDLE drbg; /* handle for instantiated DRBG */
|
||||
uint32_t rc; /* return code */
|
||||
|
||||
clock_t clk;
|
||||
|
||||
FILE *Handle=NULL; /* File Handler */
|
||||
struct stat st = {0}; /* Dir Handler */
|
||||
|
||||
NTRU_ENCRYPT_PARAM_SET_ID param_set_id;
|
||||
|
||||
printf("------------------------------------------------\n");
|
||||
printf("Enter Message \t\t: ");
|
||||
// message = "Hello Bastard...";
|
||||
fgets(message, 86, stdin);
|
||||
|
||||
printf("Your message is \t: %s\n",message);
|
||||
param_set_id = PARAM_SET_IDS[14]; /* 0 : 401; 1 : 449; 14 : 593; */
|
||||
|
||||
fprintf(stderr, "Testing parameter set \t: %s\n", ntru_encrypt_get_param_set_name(param_set_id));
|
||||
printf("------------------------------------------------\n");
|
||||
fflush (stderr);
|
||||
|
||||
rc = ntru_crypto_drbg_external_instantiate(
|
||||
(RANDOM_BYTES_FN) &randombytes, &drbg);
|
||||
|
||||
if (rc != DRBG_OK)
|
||||
{
|
||||
fprintf(stderr,"\tError: An error occurred instantiating the DRBG\n");
|
||||
}
|
||||
|
||||
rc = ntru_crypto_ntru_encrypt_keygen(drbg, param_set_id, &public_key_len,
|
||||
NULL, &private_key_len, NULL);
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
ntru_crypto_drbg_uninstantiate(drbg);
|
||||
fprintf(stderr,"\tError: An error occurred getting the key lengths\n");
|
||||
}
|
||||
|
||||
public_key = (uint8_t *)malloc(public_key_len * sizeof(uint8_t));
|
||||
private_key = (uint8_t *)malloc(private_key_len * sizeof(uint8_t));
|
||||
|
||||
clk = clock();
|
||||
rc = ntru_crypto_ntru_encrypt_keygen(drbg, param_set_id, &public_key_len,
|
||||
public_key,
|
||||
&private_key_len,
|
||||
private_key);
|
||||
clk = clock() - clk;
|
||||
|
||||
if (stat("./keys", &st) == -1) {
|
||||
mkdir("./keys", 0700);
|
||||
printf("Key directory created...\n");
|
||||
|
||||
}
|
||||
|
||||
Handle=fopen("keys/key-593.pub", "wb");
|
||||
if(Handle!=NULL) {
|
||||
printf("-> Writing Pub Key...\n");
|
||||
fwrite(public_key, public_key_len, 1, Handle);
|
||||
printf("-> Pub Key written...\n");
|
||||
fclose(Handle);
|
||||
}
|
||||
|
||||
Handle=fopen("keys/key-593.priv", "wb");
|
||||
if(Handle!=NULL) {
|
||||
printf("-> Writing Priv Key...\n");
|
||||
fwrite(private_key, private_key_len, 1, Handle);
|
||||
printf("-> Private Key written...\n");
|
||||
fclose(Handle);
|
||||
}
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
ntru_crypto_drbg_uninstantiate(drbg);
|
||||
free(public_key);
|
||||
free(private_key);
|
||||
fprintf(stderr,"\tError: An error occurred during key generation\n");
|
||||
}
|
||||
|
||||
|
||||
rc = ntru_crypto_ntru_encrypt(drbg, public_key_len, public_key, 0, NULL,
|
||||
&ciphertext_len, NULL);
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
fprintf(stderr,"\tError: Bad public key");
|
||||
}
|
||||
|
||||
rc = ntru_crypto_ntru_decrypt(private_key_len, private_key, 0, NULL,
|
||||
&max_msg_len, NULL);
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
fprintf(stderr,"\tError: Bad private key");
|
||||
}
|
||||
|
||||
//message = (uint8_t *) malloc(max_msg_len * sizeof(uint8_t));
|
||||
printf("------------------------------------------------\n");
|
||||
printf("Max message block \t: %d\n", max_msg_len * sizeof(uint8_t));
|
||||
|
||||
ciphertext = (uint8_t *) malloc(ciphertext_len * sizeof(uint8_t));
|
||||
|
||||
plaintext = (uint8_t *) malloc(max_msg_len * sizeof(uint8_t));
|
||||
|
||||
plaintext_len = max_msg_len;
|
||||
|
||||
//randombytes(message, max_msg_len);
|
||||
//randombytes(ciphertext, ciphertext_len);
|
||||
//randombytes(plaintext, plaintext_len);
|
||||
|
||||
|
||||
clk = clock();
|
||||
rc = ntru_crypto_ntru_encrypt(drbg, public_key_len, public_key,
|
||||
max_msg_len, message, &ciphertext_len, ciphertext);
|
||||
clk = clock() - clk;
|
||||
if (rc != NTRU_OK){
|
||||
fprintf(stderr, "\tError: Encryption error %x\n", rc);
|
||||
}
|
||||
|
||||
//printf("Cipher %s\n", ciphertext);
|
||||
|
||||
|
||||
clk = clock();
|
||||
rc = ntru_crypto_ntru_decrypt(private_key_len, private_key,
|
||||
ciphertext_len, ciphertext,
|
||||
&plaintext_len, plaintext);
|
||||
clk = clock() - clk;
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
fprintf(stderr, "\tError: Decryption error %x\n", rc);
|
||||
}
|
||||
|
||||
printf("Decryption result \t: %s\n", plaintext);
|
||||
|
||||
if(plaintext_len != max_msg_len || memcmp(plaintext,message,max_msg_len))
|
||||
{
|
||||
fprintf(stderr,
|
||||
"\tError: Decryption result does not match original plaintext\n");
|
||||
}
|
||||
|
||||
ntru_crypto_drbg_uninstantiate(drbg);
|
||||
//free(message);
|
||||
//free(public_key);
|
||||
//free(private_key);
|
||||
//free(plaintext);
|
||||
//free(ciphertext);
|
||||
|
||||
fprintf(stderr, "pk %d, sk %d, ct %d bytes\n",
|
||||
public_key_len, private_key_len, ciphertext_len);
|
||||
printf("------------------------------------------------\n");
|
||||
fprintf(stderr, "\n");
|
||||
}
|
78
infidel-code/EES593/URG_decrypt.c
Normal file
78
infidel-code/EES593/URG_decrypt.c
Normal file
@ -0,0 +1,78 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
#include <fcntl.h>
|
||||
#include <time.h>
|
||||
#include "ntru_crypto.h"
|
||||
|
||||
uint32_t get_rand(uint8_t *out, uint32_t num_bytes)
|
||||
{
|
||||
int rng = 50;
|
||||
int urnd = open("/dev/random", O_RDONLY);
|
||||
read(urnd, &rng, sizeof(int));
|
||||
*out = urnd;
|
||||
close(urnd);
|
||||
return 0;
|
||||
}
|
||||
|
||||
char * main(char * user_input)
|
||||
{
|
||||
uint8_t public_key[821]; /* sized for EES401EP2 */
|
||||
uint16_t public_key_len; /* no. of octets in public key */
|
||||
uint8_t private_key[891]; /* sized for EES401EP2 */
|
||||
uint16_t private_key_len; /* no. of octets in private key */
|
||||
uint16_t expected_private_key_len;
|
||||
uint16_t expected_encoded_public_key_len;
|
||||
uint8_t encoded_public_key[855]; /* sized for EES401EP2 */
|
||||
uint16_t encoded_public_key_len; /* no. of octets in encoded public key */
|
||||
uint8_t ciphertext[816]; /* sized fof EES401EP2 */
|
||||
uint16_t ciphertext_len; /* no. of octets in ciphertext */
|
||||
uint8_t plaintext[16]; /* size of AES-128 key */
|
||||
uint16_t plaintext_len; /* no. of octets in plaintext */
|
||||
uint8_t *next = NULL; /* points to next cert field to parse */
|
||||
uint32_t next_len; /* no. of octets it next */
|
||||
DRBG_HANDLE drbg; /* handle for instantiated DRBG */
|
||||
uint32_t rc; /* return code */
|
||||
bool error = FALSE; /* records if error occurred */
|
||||
FILE *Handle=NULL; /* File Handle for writing NTRU key to file */
|
||||
char buffer[891];
|
||||
char *buffer2 = 0;
|
||||
char *c = malloc(86);
|
||||
char *d = malloc(816);
|
||||
int r;
|
||||
int s;
|
||||
|
||||
double cpu_time_used;
|
||||
|
||||
rc = ntru_crypto_drbg_uninstantiate(drbg);
|
||||
|
||||
FILE *f=fopen("keys/key-593.priv", "rb");
|
||||
r = fread(buffer, 1,891, f);
|
||||
fclose(f);
|
||||
|
||||
|
||||
rc = ntru_crypto_ntru_decrypt(r, buffer, 816, user_input, &plaintext_len,
|
||||
NULL);
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
printf("ERROR 1\n");
|
||||
|
||||
rc = ntru_crypto_ntru_decrypt(r, buffer, 816, user_input, &plaintext_len,
|
||||
plaintext);
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
printf("ERROR 2\n");
|
||||
|
||||
// printf("C Log DEC : your plain: %s\n", plaintext);
|
||||
// printf("C Log DEC : your plain LEN: %d\n", plaintext_len);
|
||||
// printf("your time spent: %lf\n", cpu_time_used);
|
||||
// snprintf(c, sizeof(c), "%s", plaintext);
|
||||
strcpy(c, plaintext);
|
||||
return c;
|
||||
|
||||
error:
|
||||
printf("PROBLEM BUDDY %d\n", rc);
|
||||
exit(EXIT_FAILURE);
|
||||
return 0;
|
||||
}
|
139
infidel-code/EES593/URG_encrypt.c
Normal file
139
infidel-code/EES593/URG_encrypt.c
Normal file
@ -0,0 +1,139 @@
|
||||
#include <stdio.h>
|
||||
#include <sys/stat.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
#include <fcntl.h>
|
||||
#include "ntru_crypto.h"
|
||||
#include "ntru_crypto_drbg.h"
|
||||
#include "test_common.h"
|
||||
#include <time.h>
|
||||
|
||||
uint8_t new_rand(uint8_t *out, uint32_t num_bytes)
|
||||
{
|
||||
int rng;
|
||||
FILE *fpointer;
|
||||
fpointer = fopen("/dev/random", "rb");
|
||||
fread(&rng, sizeof(int), 1, fpointer);
|
||||
*out = rng;
|
||||
fclose(fpointer);
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint32_t get_rand(uint8_t *out, uint32_t num_bytes)
|
||||
{
|
||||
int rng = 50;
|
||||
int urnd = open("/dev/random", O_RDONLY);
|
||||
read(urnd, &rng, sizeof(int));
|
||||
*out = urnd;
|
||||
close(urnd);
|
||||
return 0;
|
||||
}
|
||||
|
||||
double main(char user_input[], char *i )
|
||||
{
|
||||
uint8_t public_key[821]; /* sized for EES401EP2 */
|
||||
uint16_t public_key_len; /* no. of octets in public key */
|
||||
uint8_t private_key[891]; /* sized for EES401EP2 */
|
||||
uint16_t private_key_len; /* no. of octets in private key */
|
||||
uint16_t expected_private_key_len;
|
||||
uint16_t expected_encoded_public_key_len;
|
||||
uint8_t encoded_public_key[855]; /* sized for EES401EP2 */
|
||||
uint16_t encoded_public_key_len; /* no. of octets in encoded public key */
|
||||
uint8_t ciphertext[816]; /* sized fof EES401EP2 */
|
||||
uint16_t ciphertext_len; /* no. of octets in ciphertext */
|
||||
uint8_t plaintext[86]; /* sized fof EES401EP2 */
|
||||
uint16_t plaintext_len; /* no. of octets in ciphertext */
|
||||
char *ret_str = ciphertext;
|
||||
uint8_t *next = NULL; /* points to next cert field to parse */
|
||||
uint32_t next_len; /* no. of octets it next */
|
||||
DRBG_HANDLE drbg; /* handle for instantiated DRBG */
|
||||
uint32_t rc; /* return code */
|
||||
bool error = FALSE; /* records if error occurred */
|
||||
FILE *Handle=NULL; /* File Handle for writing NTRU key to file */
|
||||
char *filename[33];
|
||||
char **ptr = filename;
|
||||
char buffer[821];
|
||||
char *c;
|
||||
char *f_name = ".cipher/ees593/cipher_";
|
||||
// char *f_name = "./cipher/cipher_EES593_";
|
||||
char *f_ext = ".dat";
|
||||
char f_spec[strlen(f_name)+strlen(f_ext)+5];
|
||||
int r;
|
||||
double cpu_time_used;
|
||||
clock_t time_s, time_e;
|
||||
NTRU_ENCRYPT_PARAM_SET_ID param_set_id;
|
||||
param_set_id = PARAM_SET_IDS[14]; /* 0 : 401; 1 : 449; 14 : 593; */
|
||||
struct stat st = {0}; /* Dir Handler */
|
||||
|
||||
FILE *f = fopen("keys/key-593.pub", "rb");
|
||||
r = fread(buffer, 1, 821, f);
|
||||
fclose(f);
|
||||
|
||||
if (stat(".cipher/ees593", &st) == -1) {
|
||||
mkdir(".cipher/ees593", 0700);
|
||||
printf("Cipher directory created...\n");
|
||||
|
||||
}
|
||||
// rc = ntru_crypto_drbg_external_instantiate(&new_rand, &drbg); /* urandom random gen */
|
||||
|
||||
fprintf(stderr, "Testing parameter set \t: %s\n", ntru_encrypt_get_param_set_name(param_set_id));
|
||||
|
||||
rc = ntru_crypto_drbg_external_instantiate(
|
||||
(RANDOM_BYTES_FN) &randombytes, &drbg);
|
||||
|
||||
if (rc != DRBG_OK)
|
||||
{
|
||||
printf("Error 1");
|
||||
goto error;
|
||||
}
|
||||
|
||||
rc = ntru_crypto_ntru_encrypt(drbg, r, buffer, 86, user_input, &ciphertext_len, NULL);
|
||||
if (rc != DRBG_OK)
|
||||
{
|
||||
printf("Error 1");
|
||||
goto error;
|
||||
}
|
||||
|
||||
time_s = clock();
|
||||
rc = ntru_crypto_ntru_encrypt(drbg, r, buffer, 86, user_input, &ciphertext_len, ciphertext);
|
||||
time_e = clock();
|
||||
|
||||
if (rc != DRBG_OK)
|
||||
{
|
||||
printf("Error 1");
|
||||
goto error;
|
||||
}
|
||||
|
||||
cpu_time_used = (float)(time_e - time_s) / CLOCKS_PER_SEC;
|
||||
if (rc != DRBG_OK)
|
||||
{
|
||||
printf("Error 1");
|
||||
goto error;
|
||||
}
|
||||
|
||||
snprintf(f_spec, sizeof(f_spec), "%s%s%s", f_name, i, f_ext);
|
||||
|
||||
Handle=fopen(f_spec, "wb");
|
||||
if(Handle!=NULL) {
|
||||
fwrite(ciphertext, ciphertext_len, 1, Handle);
|
||||
fclose(Handle);
|
||||
} else {
|
||||
printf("\t*******************************\n\n");
|
||||
fprintf(stderr, "\tNo Dir Found ...\n\tProcess ABORTED...");
|
||||
printf("\n\t*******************************\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
fprintf(stderr, "Cipher size : %d bytes\n",
|
||||
ciphertext_len);
|
||||
printf("------------------------------------------------\n");
|
||||
fprintf(stderr, "\n");
|
||||
|
||||
return cpu_time_used;
|
||||
|
||||
error:
|
||||
printf("ERROR %x\n", rc);
|
||||
return 0;
|
||||
}
|
||||
|
241
infidel-code/EES593/sample_NTRUEncrypt.c
Normal file
241
infidel-code/EES593/sample_NTRUEncrypt.c
Normal file
@ -0,0 +1,241 @@
|
||||
#include <stdio.h>
|
||||
#include <time.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
#include <fcntl.h>
|
||||
#include "ntru_crypto.h"
|
||||
#include "ntru_crypto_drbg.h"
|
||||
#include "test_common.h"
|
||||
|
||||
//typedef uint32_t (*urnd)(uint8_t *out, uint32_t num_bytes);
|
||||
static uint8_t const aes_key[] = "Decraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
|
||||
uint32_t get_rand(uint8_t *out, uint32_t num_bytes)
|
||||
{
|
||||
int rng = 50;
|
||||
int urnd = open("/dev/random", O_RDONLY);
|
||||
read(urnd, &rng, sizeof(int));
|
||||
*out = urnd;
|
||||
close(urnd);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int main(void) {
|
||||
|
||||
|
||||
//uint8_t public_key[557];
|
||||
double cpu_time_used;
|
||||
uint8_t public_key[821]; /* sized for EES401EP2 */
|
||||
uint16_t public_key_len; /* no. of octets in public key */
|
||||
uint8_t private_key[891]; /* sized for EES401EP2 */
|
||||
uint16_t private_key_len; /* no. of octets in private key */
|
||||
uint16_t expected_private_key_len;
|
||||
uint16_t expected_encoded_public_key_len;
|
||||
uint8_t encoded_public_key[855]; /* sized for EES401EP2 */
|
||||
uint16_t encoded_public_key_len; /* no. of octets in encoded public key */
|
||||
uint8_t ciphertext[816]; /* sized fof EES401EP2 */
|
||||
uint16_t ciphertext_len; /* no. of octets in ciphertext */
|
||||
uint8_t plaintext[86]; /* size of AES-128 key */
|
||||
uint16_t plaintext_len; /* no. of octets in plaintext */
|
||||
uint8_t *next = NULL; /* points to next cert field to parse */
|
||||
uint32_t next_len; /* no. of octets it next */
|
||||
DRBG_HANDLE drbg; /* handle for instantiated DRBG */
|
||||
uint32_t rc; /* return code */
|
||||
bool error = FALSE; /* records if error occurred */
|
||||
FILE *Handle=NULL; /* File Handle for writing NTRU key to file */
|
||||
char buffer[891];
|
||||
clock_t time_s, time_e;
|
||||
|
||||
rc = ntru_crypto_drbg_external_instantiate(&get_rand, &drbg);
|
||||
|
||||
if (rc != DRBG_OK)
|
||||
{
|
||||
printf("ERROR 1");
|
||||
goto error;
|
||||
}
|
||||
|
||||
rc = ntru_crypto_ntru_encrypt_keygen(drbg, NTRU_EES593EP1, &public_key_len, NULL, &private_key_len, NULL);
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
printf("ERROR 2");
|
||||
error = TRUE;
|
||||
}
|
||||
|
||||
expected_private_key_len=private_key_len;
|
||||
time_s = clock();
|
||||
rc = ntru_crypto_ntru_encrypt_keygen(drbg, NTRU_EES593EP1, &public_key_len, public_key, &private_key_len, private_key);
|
||||
time_e = clock();
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
printf("ERROR 3");
|
||||
error = TRUE;
|
||||
}
|
||||
|
||||
if (expected_private_key_len!=private_key_len)
|
||||
{
|
||||
fprintf(stderr, "PRivate key length is different\n");
|
||||
error = TRUE;
|
||||
}
|
||||
|
||||
printf("Key sucessfully generated. \n");
|
||||
|
||||
rc = ntru_crypto_drbg_uninstantiate(drbg);
|
||||
if ((rc != DRBG_OK) || error)
|
||||
{
|
||||
printf("ERROR 4");
|
||||
error = TRUE;
|
||||
}
|
||||
|
||||
printf("KEY DRBG Success. \n");
|
||||
|
||||
Handle=fopen("EES593/EES593-ntru-priv.raw","wb");
|
||||
if (Handle!=NULL){
|
||||
printf("Writing Pirvate key\n");
|
||||
fwrite(private_key, private_key_len, 1, Handle);
|
||||
fclose(Handle);
|
||||
}
|
||||
Handle=fopen("EES593/EES593-ntru-pub.raw","wb");
|
||||
if(Handle!=NULL){
|
||||
printf("Writing Public key\n");
|
||||
printf("Public Key : \n %s\n", public_key);
|
||||
fwrite(public_key, public_key_len, 1, Handle);
|
||||
fclose(Handle);
|
||||
}
|
||||
|
||||
rc = ntru_crypto_ntru_encrypt_publicKey2SubjectPublicKeyInfo(public_key_len, public_key, &encoded_public_key_len, NULL);
|
||||
if (rc != NTRU_OK)
|
||||
goto error;
|
||||
printf("DER encoded, sized requierd %d . \n", encoded_public_key_len);
|
||||
expected_encoded_public_key_len = encoded_public_key_len;
|
||||
rc = ntru_crypto_ntru_encrypt_publicKey2SubjectPublicKeyInfo(public_key_len, public_key, &encoded_public_key_len, encoded_public_key);
|
||||
|
||||
if (expected_encoded_public_key_len!=encoded_public_key_len)
|
||||
{
|
||||
fprintf(stderr, "Different encoded pub key detected\n");
|
||||
error = TRUE;
|
||||
}
|
||||
|
||||
next = encoded_public_key;
|
||||
next_len = encoded_public_key_len;
|
||||
rc = ntru_crypto_ntru_encrypt_subjectPublicKeyInfo2PublicKey(next, &public_key_len, NULL, &next, &next_len);
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
printf("ERROR 5");
|
||||
goto error;
|
||||
}
|
||||
printf("Pub key buffer must %d\n", public_key_len);
|
||||
|
||||
rc = ntru_crypto_ntru_encrypt_subjectPublicKeyInfo2PublicKey(next, &public_key_len, public_key, &next, &next_len);
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
printf("ERROR 6");
|
||||
goto error;
|
||||
}
|
||||
printf("Pub DER Encoding success\n");
|
||||
|
||||
printf("Encryption Phase \n");
|
||||
rc = ntru_crypto_drbg_external_instantiate(&get_rand, &drbg);
|
||||
|
||||
if (rc != DRBG_OK)
|
||||
{
|
||||
printf("ERROR 7");
|
||||
goto error;
|
||||
}
|
||||
printf("Sucess encrypt\n");
|
||||
rc = ntru_crypto_ntru_encrypt(drbg, public_key_len, public_key, sizeof(aes_key), aes_key, &ciphertext_len, NULL);
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
printf("ERROR 7");
|
||||
goto error;
|
||||
}
|
||||
printf("String to be encrypted: %s\n", aes_key);
|
||||
|
||||
rc = ntru_crypto_ntru_encrypt(drbg, public_key_len, public_key, sizeof(aes_key), aes_key, &ciphertext_len, ciphertext);
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
printf("ERROR 8");
|
||||
goto error;
|
||||
}
|
||||
//printf("Ciphertext : %s\n", ciphertext);
|
||||
rc = ntru_crypto_drbg_uninstantiate(drbg);
|
||||
printf("Done BLyat!!!!\n");
|
||||
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
printf("ERROR 9");
|
||||
goto error;
|
||||
}
|
||||
|
||||
Handle=fopen("EES593/EES593-ntru-priv.raw","rb");
|
||||
if(Handle!=NULL){
|
||||
printf("Read Public key\n");
|
||||
fread(buffer, 891, 1, Handle);
|
||||
fclose(Handle);
|
||||
}
|
||||
rc = ntru_crypto_ntru_decrypt(private_key_len, buffer, ciphertext_len,
|
||||
ciphertext, &plaintext_len, NULL);
|
||||
if (rc != NTRU_OK)
|
||||
/* An error occurred requesting the buffer size needed. */
|
||||
goto error;
|
||||
printf("Maximum plaintext buffer size required: %d octets.\n",
|
||||
plaintext_len);
|
||||
|
||||
/* Now we could allocate a buffer of length plaintext_len to hold the
|
||||
* plaintext, but note that plaintext_len has the maximum plaintext
|
||||
* size for the EES401EP2 parameter set. Since we know that we've
|
||||
* received an encrypted AES-128 key in this example, and since we
|
||||
* already have a plaintext buffer as a local variable, we'll just
|
||||
* supply the length of that plaintext buffer for decryption.
|
||||
*/
|
||||
plaintext_len = sizeof(plaintext);
|
||||
rc = ntru_crypto_ntru_decrypt(private_key_len, buffer, ciphertext_len,
|
||||
ciphertext, &plaintext_len, plaintext);
|
||||
if (rc != NTRU_OK)
|
||||
{
|
||||
fprintf(stderr,"Error: An error occurred decrypting the AES-128 key.\n");
|
||||
return 1;
|
||||
}
|
||||
printf("AES-128 key decrypted successfully.\n");
|
||||
printf("Decoded plaintext length: %d octets\n",plaintext_len);
|
||||
|
||||
if(plaintext_len!=sizeof(aes_key))
|
||||
{
|
||||
fprintf(stderr,"Error: Decrypted length does not match original plaintext length\n");
|
||||
return 1;
|
||||
}
|
||||
if(memcmp(plaintext,aes_key,sizeof(aes_key)))
|
||||
{
|
||||
fprintf(stderr,"Error: Decrypted plaintext does not match original plaintext\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
Handle=fopen("sample-decoded-plaintext.bin","wb");
|
||||
if(Handle!=NULL)
|
||||
{
|
||||
printf("Writing decoded plaintext to decoded-plaintext.bin\n");
|
||||
printf("Plain text : %s\n", plaintext);
|
||||
fwrite(plaintext,plaintext_len,1,Handle);
|
||||
fclose(Handle);
|
||||
}
|
||||
|
||||
cpu_time_used = (float)(time_e - time_s) / CLOCKS_PER_SEC;
|
||||
printf("Time Keygen NTRU : %lf\n", cpu_time_used);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/* And now the plaintext buffer holds the decrypted AES-128 key. */
|
||||
printf("Sample code completed successfully.\n");
|
||||
error:
|
||||
printf("ERROR %x\n", rc);
|
||||
return 1;
|
||||
|
||||
}
|
37
infidel-code/Makefile
Normal file
37
infidel-code/Makefile
Normal file
@ -0,0 +1,37 @@
|
||||
CC=sccache gcc
|
||||
CFLAGS=-I include -I test -w
|
||||
SFLAGS=-shared -fPIC
|
||||
DEPS:=$(shell cat ./satan.txt)
|
||||
|
||||
MAKEFLAGS += --silent
|
||||
|
||||
|
||||
all: test_401_full test_593_full
|
||||
@echo "Compiled " $@
|
||||
|
||||
test_401_full:
|
||||
$(CC) $(DEPS) EES401/URG_Keygen.c -o bin/$@ $(CFLAGS)
|
||||
@echo "Compiled " $@
|
||||
|
||||
test_593_full:
|
||||
$(CC) $(DEPS) EES593/URG_Keygen.c -o bin/$@ $(CFLAGS)
|
||||
@echo "Compiled " $@
|
||||
|
||||
enc_593.so:
|
||||
$(CC) $(SFLAGS) $(DEPS) EES593/URG_encrypt.c -o bin/$@ $(CFLAGS)
|
||||
@echo "Compiled " $@
|
||||
|
||||
dec_593.so:
|
||||
$(CC) $(SFLAGS) $(DEPS) EES593/URG_decrypt.c -o bin/$@ $(CFLAGS)
|
||||
@echo "Compiled " $@
|
||||
|
||||
enc_401.so:
|
||||
$(CC) $(SFLAGS) $(DEPS) EES401/URG_encrypt.c -o bin/$@ $(CFLAGS)
|
||||
@echo "Compiled " $@
|
||||
|
||||
dec_401.so:
|
||||
$(CC) $(SFLAGS) $(DEPS) EES401/URG_decrypt.c -o bin/$@ $(CFLAGS)
|
||||
@echo "Compiled " $@
|
||||
clean:
|
||||
@rm bin/*
|
||||
@echo "Bin Cleaned ... "
|
18
infidel-code/README.md
Normal file
18
infidel-code/README.md
Normal file
@ -0,0 +1,18 @@
|
||||
# NTRU IoT Infidel
|
||||
|
||||
### Build
|
||||
|
||||
make test_401_full
|
||||
make test_593_full
|
||||
make test_593_full
|
||||
|
||||
### Shared Object Connector to Python Wrapper
|
||||
|
||||
python3 py-wrappers/python_Connector.py
|
||||
|
||||
### Test Runnner
|
||||
|
||||
./runner.sh
|
||||
|
||||
![Runner](http://192.168.2.34/infidel/NTRU_IoT/raw/branch/master/assets/runner.png)
|
||||
|
BIN
infidel-code/bin/dec_401.so
Executable file
BIN
infidel-code/bin/dec_401.so
Executable file
Binary file not shown.
BIN
infidel-code/bin/dec_593.so
Executable file
BIN
infidel-code/bin/dec_593.so
Executable file
Binary file not shown.
BIN
infidel-code/bin/enc_401.so
Executable file
BIN
infidel-code/bin/enc_401.so
Executable file
Binary file not shown.
BIN
infidel-code/bin/enc_593.so
Executable file
BIN
infidel-code/bin/enc_593.so
Executable file
Binary file not shown.
BIN
infidel-code/bin/keys/key-593.priv
Normal file
BIN
infidel-code/bin/keys/key-593.priv
Normal file
Binary file not shown.
BIN
infidel-code/bin/keys/key-593.pub
Normal file
BIN
infidel-code/bin/keys/key-593.pub
Normal file
Binary file not shown.
BIN
infidel-code/bin/test_401_full
Executable file
BIN
infidel-code/bin/test_401_full
Executable file
Binary file not shown.
BIN
infidel-code/bin/test_593_full
Executable file
BIN
infidel-code/bin/test_593_full
Executable file
Binary file not shown.
19
infidel-code/call.py
Executable file
19
infidel-code/call.py
Executable file
@ -0,0 +1,19 @@
|
||||
#!/bin/env python3
|
||||
import py_wrappers.python_Connector as pC
|
||||
|
||||
print("Rapid Test : ")
|
||||
print("1. EES 401")
|
||||
print("2. EES 593")
|
||||
|
||||
case = input("-> : ")
|
||||
rpt = input("-> Repetition : ")
|
||||
|
||||
if case == "1":
|
||||
print("EES 401")
|
||||
pC.enc_dec_test("401", int(rpt))
|
||||
|
||||
|
||||
|
||||
if case == "2":
|
||||
print("EES 593")
|
||||
pC.enc_dec_test("593", int(rpt))
|
1512
infidel-code/data/1phase.json
Normal file
1512
infidel-code/data/1phase.json
Normal file
File diff suppressed because it is too large
Load Diff
276
infidel-code/data/3phase.json
Normal file
276
infidel-code/data/3phase.json
Normal file
@ -0,0 +1,276 @@
|
||||
[{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:03:59\",\"Va\":222,\"Vb\":222.1,\"Vc\":222.1,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":22,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-lAulad9GS3yk2Dpp","time":"2021-01-21T22:04:16.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:03:59\",\"Va\":222,\"Vb\":222.1,\"Vc\":222.1,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":22,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-pq4H2IqZRd2FLaEL","time":"2021-01-21T22:04:39.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:03:59\",\"Va\":222,\"Vb\":222.1,\"Vc\":222.1,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":22,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-caul5PRlSYywcCRG","time":"2021-01-21T22:05:01.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:03:59\",\"Va\":222,\"Vb\":222.1,\"Vc\":222.1,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":22,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-WGsG8kNWTF-9szN1","time":"2021-01-21T22:05:24.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:03:59\",\"Va\":222,\"Vb\":222.1,\"Vc\":222.1,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":22,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-TQRLh7_SShSt_3Ue","time":"2021-01-21T22:05:55.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:03:59\",\"Va\":222,\"Vb\":222.1,\"Vc\":222.1,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":22,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-i6VZtlhlRpmCA-eP","time":"2021-01-21T22:06:27.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:07:29\",\"Va\":220.2,\"Vb\":220.2,\"Vc\":220.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":22,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-JFsO9Xl3Qpi3_1Qw","time":"2021-01-21T22:07:33.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:07:29\",\"Va\":220.2,\"Vb\":220.2,\"Vc\":220.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":22,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-TvQDBkM5R4OrwxRH","time":"2021-01-21T22:08:05.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:07:29\",\"Va\":220.2,\"Vb\":220.2,\"Vc\":220.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":22,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-wfzjrBiHQzCYk8Ap","time":"2021-01-21T22:08:38.000Z"}
|
||||
,{"data":"{\"tanggal\":\"\",\"jam\":\"\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-fpvlhlMWTny3D1Ww","time":"2021-01-21T22:09:07.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:09:40\",\"Va\":220.7,\"Vb\":220.8,\"Vc\":220.8,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":22,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-TZkcro-RT1yijHmm","time":"2021-01-21T22:09:23.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:09:40\",\"Va\":220.7,\"Vb\":220.8,\"Vc\":220.8,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":22,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-KUulkwjRSXSkT1r-","time":"2021-01-21T22:09:23.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:09:40\",\"Va\":220.7,\"Vb\":220.8,\"Vc\":220.8,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":22,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-NAUqQcDyRlqk-DVu","time":"2021-01-21T22:09:23.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:09:40\",\"Va\":220.7,\"Vb\":220.8,\"Vc\":220.8,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":22,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-wp4WT8o1R0KytziH","time":"2021-01-21T22:09:24.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:09:40\",\"Va\":220.7,\"Vb\":220.8,\"Vc\":220.8,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":22,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-dv17LiVNSQCDIc4D","time":"2021-01-21T22:09:24.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:09:40\",\"Va\":220.7,\"Vb\":220.8,\"Vc\":220.8,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":22,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-mL88H6XQSgaYHeA8","time":"2021-01-21T22:09:56.000Z"}
|
||||
,{"data":"{\"tanggal\":\"\",\"jam\":\"\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-Squn_5sLQ76UGLCs","time":"2021-01-21T22:10:41.000Z"}
|
||||
,{"data":"{\"tanggal\":\"\",\"jam\":\"\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-B7UyB5TVRoChgHvB","time":"2021-01-21T22:10:47.000Z"}
|
||||
,{"data":"{\"tanggal\":\"\",\"jam\":\"\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-edqsUIELRT--o1R5","time":"2021-01-21T22:10:47.000Z"}
|
||||
,{"data":"{\"tanggal\":\"\",\"jam\":\"\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-RL1vd0N7SMiixkBY","time":"2021-01-21T22:10:47.000Z"}
|
||||
,{"data":"{\"tanggal\":\"\",\"jam\":\"\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-9tFhXUEPS1qT2Rw9","time":"2021-01-21T22:10:47.000Z"}
|
||||
,{"data":"{\"tanggal\":\"\",\"jam\":\"\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-OZTIqneVRsKxtGtf","time":"2021-01-21T22:10:52.000Z"}
|
||||
,{"data":"{\"tanggal\":\"\",\"jam\":\"\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-75ETDBXzQOKDHZwG","time":"2021-01-21T22:10:57.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:11:32\",\"Va\":222.5,\"Vb\":222.5,\"Vc\":222.5,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-FpVyO6boRjO3vMl6","time":"2021-01-21T22:11:05.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:11:32\",\"Va\":222.5,\"Vb\":222.5,\"Vc\":222.5,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-CAS5Xd8TSmi35LKE","time":"2021-01-21T22:11:10.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:11:32\",\"Va\":222.5,\"Vb\":222.5,\"Vc\":222.5,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-xr3H21INTYq5s5j2","time":"2021-01-21T22:11:10.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:11:32\",\"Va\":222.5,\"Vb\":222.5,\"Vc\":222.5,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-c9s6OeGbRI--uG8G","time":"2021-01-21T22:11:15.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:11:32\",\"Va\":222.5,\"Vb\":222.5,\"Vc\":222.5,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-OGHY0vifQ1aZBw5i","time":"2021-01-21T22:11:20.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:11:32\",\"Va\":222.5,\"Vb\":222.5,\"Vc\":222.5,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-CHtzfKxEQS2HX5kS","time":"2021-01-21T22:11:25.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:11:32\",\"Va\":222.5,\"Vb\":222.5,\"Vc\":222.5,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-1JY9MQpuT221NErt","time":"2021-01-21T22:11:31.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:11:32\",\"Va\":222.5,\"Vb\":222.5,\"Vc\":222.5,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-sEAS55NiTAepuzq-","time":"2021-01-21T22:11:38.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:11:32\",\"Va\":222.5,\"Vb\":222.5,\"Vc\":222.5,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-uOjgfh0aR_aiOhdd","time":"2021-01-21T22:11:38.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:12:37\",\"Va\":223.5,\"Vb\":223.6,\"Vc\":223.6,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-_mU0YkerTYObpLKv","time":"2021-01-21T22:12:09.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:12:37\",\"Va\":223.5,\"Vb\":223.6,\"Vc\":223.6,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-hSDZf3bfTbyQF-s3","time":"2021-01-21T22:12:41.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:12:37\",\"Va\":223.5,\"Vb\":223.6,\"Vc\":223.6,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-TvLCmKaOQceEzKq2","time":"2021-01-21T22:13:14.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:12:37\",\"Va\":223.5,\"Vb\":223.6,\"Vc\":223.6,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-x6dUKeUGRTao-O9g","time":"2021-01-21T22:13:47.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:12:37\",\"Va\":223.5,\"Vb\":223.6,\"Vc\":223.6,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-qPsdnsIJRaGsd2OA","time":"2021-01-21T22:14:19.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:12:37\",\"Va\":223.5,\"Vb\":223.6,\"Vc\":223.6,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-6EY4TkirQKym7mXy","time":"2021-01-21T22:14:52.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:12:37\",\"Va\":223.5,\"Vb\":223.6,\"Vc\":223.6,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-JxTbYPLLS72M4fGS","time":"2021-01-21T22:15:25.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:12:37\",\"Va\":223.5,\"Vb\":223.6,\"Vc\":223.6,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-SfF8tjHKRG-BClfM","time":"2021-01-21T22:15:58.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:12:37\",\"Va\":223.5,\"Vb\":223.6,\"Vc\":223.6,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-Efo7dlycRiSnt1MJ","time":"2021-01-21T22:16:30.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:12:37\",\"Va\":223.5,\"Vb\":223.6,\"Vc\":223.6,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-nUAmV3fZSCyXOOCf","time":"2021-01-21T22:17:03.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:12:37\",\"Va\":223.5,\"Vb\":223.6,\"Vc\":223.6,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-geiKf_enRjaF5Zju","time":"2021-01-21T22:17:36.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:12:37\",\"Va\":223.5,\"Vb\":223.6,\"Vc\":223.6,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-F1DmBSqzRQi2lHJu","time":"2021-01-21T22:18:08.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:19:42\",\"Va\":224.8,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-h0L0AaspRnameViB","time":"2021-01-21T22:19:14.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:19:42\",\"Va\":224.8,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-3G2hWUr6TVmCvhhv","time":"2021-01-21T22:19:47.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:19:42\",\"Va\":224.8,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-PseEhcSUQFWfcsIW","time":"2021-01-21T22:20:17.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:19:42\",\"Va\":224.8,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-rnnxOpWAS6yHGtAK","time":"2021-01-21T22:20:30.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:19:42\",\"Va\":224.8,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-m2Bbs-c4Qiei6Nr8","time":"2021-01-21T22:20:43.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:19:42\",\"Va\":224.8,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin--v5W3GgpRIqYw6Pe","time":"2021-01-21T22:20:56.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:19:42\",\"Va\":224.8,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-Ps_OUhF4TKqb9gQl","time":"2021-01-21T22:21:08.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:19:42\",\"Va\":224.8,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-yL58Kho5S4y2lSf8","time":"2021-01-21T22:21:21.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:19:42\",\"Va\":224.8,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-EN8t9E8KTqS_fHFt","time":"2021-01-21T22:21:34.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:19:42\",\"Va\":224.8,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-Z7PdmRGaSLCMiiNP","time":"2021-01-21T22:21:46.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:19:42\",\"Va\":224.8,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-EBQyTQjsRdeJdVRP","time":"2021-01-21T22:21:59.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:19:42\",\"Va\":224.8,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin--KJ-Q_6wSzaypFlm","time":"2021-01-21T22:22:12.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:19:42\",\"Va\":224.8,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-uQHjfmY7QbGI4e1y","time":"2021-01-21T22:22:25.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:19:42\",\"Va\":224.8,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-88t8MaZdQVieEi05","time":"2021-01-21T22:22:37.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:19:42\",\"Va\":224.8,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-T9sZh_-JTFqIh0Gv","time":"2021-01-21T22:22:50.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":22,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-woGkSPnpQtCznt5S","time":"2021-01-21T22:23:26.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":22,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-dd5Ux05CSp-hBm_6","time":"2021-01-21T22:23:39.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:24:35\",\"Va\":224.9,\"Vb\":225,\"Vc\":225,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-v7x-qIl-QTKHqAAh","time":"2021-01-21T22:24:06.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:25:03\",\"Va\":225.1,\"Vb\":225.2,\"Vc\":225.2,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-4B8ECOp9TQKb2041","time":"2021-01-21T22:24:35.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:25:26\",\"Va\":225.6,\"Vb\":225.7,\"Vc\":225.7,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-HpwEr4m4Q0CkrOuY","time":"2021-01-21T22:24:57.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:25:48\",\"Va\":225.9,\"Vb\":226,\"Vc\":226,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-WzFTETnySceE2B_P","time":"2021-01-21T22:25:20.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:26:11\",\"Va\":224.7,\"Vb\":224.7,\"Vc\":224.8,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-sXzfeaY9ReWSBYso","time":"2021-01-21T22:25:43.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:26:34\",\"Va\":225.5,\"Vb\":225.5,\"Vc\":225.6,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-3f81PAqRRbSWggBW","time":"2021-01-21T22:26:05.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:26:57\",\"Va\":225,\"Vb\":225,\"Vc\":225,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-_wO1Nu5GRNikRbw_","time":"2021-01-21T22:26:28.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:27:19\",\"Va\":224.5,\"Vb\":224.6,\"Vc\":224.6,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-h7kni_pYR720wKk6","time":"2021-01-21T22:26:51.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:27:42\",\"Va\":225.3,\"Vb\":225.3,\"Vc\":225.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-RrzbA-a6SoChsXEB","time":"2021-01-21T22:27:14.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:28:05\",\"Va\":225.9,\"Vb\":225.9,\"Vc\":225.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-BCldtztUSZiVoeBD","time":"2021-01-21T22:27:36.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:28:28\",\"Va\":225.9,\"Vb\":225.9,\"Vc\":226,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-FOcxYMUpSYekt72Q","time":"2021-01-21T22:27:59.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:28:50\",\"Va\":225.2,\"Vb\":225.3,\"Vc\":225.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-hRFsKBdpSbaXQ8a8","time":"2021-01-21T22:28:22.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:29:13\",\"Va\":225.4,\"Vb\":225.4,\"Vc\":225.4,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-DJYedRUdTeuigsVA","time":"2021-01-21T22:28:44.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:29:36\",\"Va\":224.6,\"Vb\":224.6,\"Vc\":224.7,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-XfvzwHIuQ6egGKJ9","time":"2021-01-21T22:29:07.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:29:58\",\"Va\":224.6,\"Vb\":224.7,\"Vc\":224.7,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-43FylTOXRbiomrUm","time":"2021-01-21T22:29:30.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-01-21\",\"jam\":\"22:30:21\",\"Va\":223.5,\"Vb\":223.5,\"Vc\":223.6,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-tln-BzvwSBq6rk7U","time":"2021-01-21T22:29:53.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:27:48\",\"Va\":227.2,\"Vb\":227.2,\"Vc\":227.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-bXYDIg-ZRnCrDmlQ","time":"2021-02-08T10:26:48.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:28:11\",\"Va\":227.1,\"Vb\":227.2,\"Vc\":227.2,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-TZ0_SwbRSBCpRYX3","time":"2021-02-08T10:27:10.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:28:34\",\"Va\":227.2,\"Vb\":227.3,\"Vc\":227.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-I6AaSocWQWyWLtqj","time":"2021-02-08T10:27:33.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:30:56\",\"Va\":227.2,\"Vb\":227.2,\"Vc\":227.2,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-kdYXRCO1SMuGdOqP","time":"2021-02-08T10:29:55.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:31:19\",\"Va\":227.4,\"Vb\":227.5,\"Vc\":227.5,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-6f1gl5K6ScOLSp-8","time":"2021-02-08T10:30:18.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:31:41\",\"Va\":227.2,\"Vb\":227.3,\"Vc\":227.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-AkvNqRiOR2u045pF","time":"2021-02-08T10:30:41.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:32:04\",\"Va\":227,\"Vb\":227.1,\"Vc\":227.1,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-AGy38PmvRBiPteUq","time":"2021-02-08T10:31:04.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:32:27\",\"Va\":227.1,\"Vb\":227.2,\"Vc\":227.2,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-eORNvsxtRBy1dK5S","time":"2021-02-08T10:31:26.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:32:49\",\"Va\":227,\"Vb\":227.1,\"Vc\":227.1,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-c0yYAe0QQLqXxDmc","time":"2021-02-08T10:31:49.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:33:12\",\"Va\":227,\"Vb\":227,\"Vc\":227.1,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-s4Yax_amR2eIVvIm","time":"2021-02-08T10:32:12.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:33:35\",\"Va\":227,\"Vb\":227.1,\"Vc\":227.1,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-jJdf-IwsReC6bDf-","time":"2021-02-08T10:32:34.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:33:58\",\"Va\":227.1,\"Vb\":227.1,\"Vc\":227.1,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-10Ml0ThYSlaBzfsR","time":"2021-02-08T10:32:57.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:34:20\",\"Va\":227.1,\"Vb\":227.2,\"Vc\":227.2,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-dh_pTgxgRJCJYzW5","time":"2021-02-08T10:33:20.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:34:43\",\"Va\":227.3,\"Vb\":227.3,\"Vc\":227.4,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-KB7-d87wQaOR-tp1","time":"2021-02-08T10:33:43.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:35:06\",\"Va\":227.4,\"Vb\":227.3,\"Vc\":227.4,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-cd761Jw_SDKc_HAA","time":"2021-02-08T10:34:05.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:35:28\",\"Va\":227.4,\"Vb\":227.5,\"Vc\":227.5,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-F99rSaGoSfqekjTa","time":"2021-02-08T10:34:28.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:35:51\",\"Va\":227.4,\"Vb\":227.5,\"Vc\":227.5,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-K99E0elmRc-sEAHF","time":"2021-02-08T10:34:51.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:36:14\",\"Va\":227.3,\"Vb\":227.4,\"Vc\":227.4,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-6JaSOtgmSFmKPp65","time":"2021-02-08T10:35:13.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:36:37\",\"Va\":227.3,\"Vb\":227.4,\"Vc\":227.4,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-juZhjhLzR5e-q3iD","time":"2021-02-08T10:35:36.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:36:59\",\"Va\":227.4,\"Vb\":227.4,\"Vc\":227.4,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-c7UPoVg4TeqHGBDu","time":"2021-02-08T10:35:59.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:37:22\",\"Va\":227.4,\"Vb\":227.4,\"Vc\":227.4,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-bldH_EGnShK0mZm4","time":"2021-02-08T10:36:22.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:37:45\",\"Va\":227.2,\"Vb\":227.2,\"Vc\":227.2,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-moMarPF_SASHqyJr","time":"2021-02-08T10:36:44.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:38:08\",\"Va\":227.2,\"Vb\":227.2,\"Vc\":227.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-_nol1pk5TXiy1mwv","time":"2021-02-08T10:37:07.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:38:30\",\"Va\":226.1,\"Vb\":226.1,\"Vc\":226.2,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-r50AzgDmSL6ET-Mn","time":"2021-02-08T10:37:30.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:38:53\",\"Va\":226.1,\"Vb\":226.2,\"Vc\":226.2,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-QtUTDSWLTdu1Sg_Y","time":"2021-02-08T10:37:53.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:39:16\",\"Va\":226.3,\"Vb\":226.3,\"Vc\":226.4,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-JHaElLDZS0O2M0Ed","time":"2021-02-08T10:38:15.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:39:38\",\"Va\":226.1,\"Vb\":226.1,\"Vc\":226.2,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-ScUT4zf9Tw6n2ePl","time":"2021-02-08T10:38:38.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:40:01\",\"Va\":226.4,\"Vb\":226.5,\"Vc\":226.5,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-4RVDN_hEQVOBOrSt","time":"2021-02-08T10:39:01.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:40:24\",\"Va\":227.3,\"Vb\":227.3,\"Vc\":227.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-JGY-qtqpTgeWSkv7","time":"2021-02-08T10:39:23.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:40:47\",\"Va\":227.1,\"Vb\":227.2,\"Vc\":227.2,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-d1OtNOr-SP-2Ijex","time":"2021-02-08T10:39:46.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:41:09\",\"Va\":227.4,\"Vb\":227.5,\"Vc\":227.5,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-nLM8KHouQG2Un2r_","time":"2021-02-08T10:40:09.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:41:32\",\"Va\":227.4,\"Vb\":227.4,\"Vc\":227.4,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-FmnLKNiYSR2c7aSK","time":"2021-02-08T10:40:32.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:41:55\",\"Va\":227.1,\"Vb\":227.1,\"Vc\":227.1,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-nOnCzeCrTwKud5Ag","time":"2021-02-08T10:40:54.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:42:17\",\"Va\":227,\"Vb\":227,\"Vc\":227,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-Alkc7YG7RnyOexPP","time":"2021-02-08T10:41:17.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:42:40\",\"Va\":227.1,\"Vb\":227.1,\"Vc\":227.2,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-OHzAdTB5QYSu7o8S","time":"2021-02-08T10:41:40.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:43:03\",\"Va\":227,\"Vb\":227.1,\"Vc\":227.1,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-Cws7_UP3RjGIQouv","time":"2021-02-08T10:42:02.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:43:26\",\"Va\":227.1,\"Vb\":227.2,\"Vc\":227.2,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-oXstofDrTJiGIz_6","time":"2021-02-08T10:42:25.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:43:48\",\"Va\":227.2,\"Vb\":227.2,\"Vc\":227.2,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-iU8fHllwRIOt9bUU","time":"2021-02-08T10:42:48.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:44:11\",\"Va\":227.2,\"Vb\":227.2,\"Vc\":227.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":10,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-byWtcUWiQli_4HkZ","time":"2021-02-08T10:43:37.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-Kk1D23BWTqyObUeD","time":"2021-02-08T10:44:01.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":50,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-sndIBvftRfKbu3Bs","time":"2021-02-08T10:44:05.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:45:29\",\"Va\":227.6,\"Vb\":227.6,\"Vc\":227.7,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-1gMdUHZYR8W6sGec","time":"2021-02-08T10:44:29.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$50.00_0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":10,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-n6XKMNtLTvSbXSAt","time":"2021-02-08T10:44:51.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-ZJY8JobbSsiqzzm-","time":"2021-02-08T10:45:16.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-W5skYrKDRp2qy2_T","time":"2021-02-08T10:45:40.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-ws2YGCcRTD6E-oma","time":"2021-02-08T10:46:05.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-nzK9o4t4T6uNSVrG","time":"2021-02-08T10:46:30.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":50,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-6LjoAcp_Q_Wdy_xJ","time":"2021-02-08T10:46:34.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:47:57\",\"Va\":227,\"Vb\":227,\"Vc\":227,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-B9pPqxQlRQGFg4sh","time":"2021-02-08T10:46:56.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$50.00_0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":10,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-807rTlgzT-S6ZaZf","time":"2021-02-08T10:47:19.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-wHzY_GAuRweSgxaE","time":"2021-02-08T10:47:44.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-im9jNbT7S_2K0SVU","time":"2021-02-08T10:48:09.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-VCrKn7PKR8mtV6Gy","time":"2021-02-08T10:48:34.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-_inI_hdXShuF5KLq","time":"2021-02-08T10:48:58.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-4eIGpU1-SxqtRiji","time":"2021-02-08T10:49:23.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-ueBbrY7LRGmuz7NK","time":"2021-02-08T10:49:48.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-CReMwd1KTreu_KpF","time":"2021-02-08T10:50:12.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-Fn4_xo0kTYubQRFS","time":"2021-02-08T10:50:37.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-szhLIqAPSRqhNICh","time":"2021-02-08T10:51:02.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-bQgaLZhcTv6tmN_W","time":"2021-02-08T10:51:26.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-RVIoE2D1QQizCriV","time":"2021-02-08T10:51:51.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-IKgxHQiRQQWyvTHV","time":"2021-02-08T10:52:16.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-XWZns7_KTwKEcrOp","time":"2021-02-08T10:52:41.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-SLsUOntJQWmPwX15","time":"2021-02-08T10:53:05.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":50,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-wdfVmnCIRpuIk7HV","time":"2021-02-08T10:53:09.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:54:32\",\"Va\":227.2,\"Vb\":227.3,\"Vc\":227.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-PG8iJqFwQAWK05FY","time":"2021-02-08T10:53:32.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$50.00_0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":10,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-gnWcClpoSSu7CJpu","time":"2021-02-08T10:53:55.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-wNxGcnXhRwWntmRC","time":"2021-02-08T10:54:19.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-jmxwjoAyQ7mthMhu","time":"2021-02-08T10:54:44.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$1.00_1.00?1.00;0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-HIZ3La2QRDGpaDd6","time":"2021-02-08T10:55:09.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$50.00_0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":10,\"Pc\":0,\"Pt\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0}","ri":"cin-NNQIau3NTJm87Jln","time":"2021-02-08T10:56:00.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:57:25\",\"Va\":227.5,\"Vb\":227.6,\"Vc\":227.6,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin--Nocwis3SyiyVa1C","time":"2021-02-08T10:56:28.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:57:50\",\"Va\":227.2,\"Vb\":227.2,\"Vc\":227.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-Jf4_QbSEQ8e5j-Ci","time":"2021-02-08T10:56:52.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:58:15\",\"Va\":227.2,\"Vb\":227.2,\"Vc\":227.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-npxrMRxNQDi8FDae","time":"2021-02-08T10:57:16.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:58:40\",\"Va\":226.8,\"Vb\":226.9,\"Vc\":226.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-GuVtnSMnTgiy43Uh","time":"2021-02-08T10:57:41.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:59:04\",\"Va\":228,\"Vb\":228,\"Vc\":228.1,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-ocWZLn8pQJ2oi_0Y","time":"2021-02-08T10:58:06.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:59:29\",\"Va\":227.3,\"Vb\":227.4,\"Vc\":227.4,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-YeuC8n1aRfCqHKYj","time":"2021-02-08T10:58:31.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"10:59:54\",\"Va\":227.3,\"Vb\":227.3,\"Vc\":227.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-5N44Y_xVSZqO-9XN","time":"2021-02-08T10:58:56.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"11:00:19\",\"Va\":227.2,\"Vb\":227.2,\"Vc\":227.2,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0}","ri":"cin-v-a4QrroQ_CUN5Pd","time":"2021-02-08T10:59:20.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"11:01:08\",\"Va\":227.4,\"Vb\":227.4,\"Vc\":227.4,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-WbQuPHxiQJS9425U","time":"2021-02-08T11:00:10.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"11:01:33\",\"Va\":227.4,\"Vb\":227.5,\"Vc\":227.5,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-C8P8aXPST-Cjb-VR","time":"2021-02-08T11:00:34.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"11:01:57\",\"Va\":227.5,\"Vb\":227.5,\"Vc\":227.5,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-Dv__TShOQheDB9pW","time":"2021-02-08T11:00:59.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"11:02:22\",\"Va\":227.4,\"Vb\":227.4,\"Vc\":227.4,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-fDcVnKghSX2-xtri","time":"2021-02-08T11:01:24.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"11:02:47\",\"Va\":227.2,\"Vb\":227.2,\"Vc\":227.2,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-oQFZM_dyTFyGqLIp","time":"2021-02-08T11:01:48.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"11:03:12\",\"Va\":227.3,\"Vb\":227.3,\"Vc\":227.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-9VLC4GXMQCKVFoyu","time":"2021-02-08T11:02:13.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"11:03:36\",\"Va\":227.2,\"Vb\":227.2,\"Vc\":227.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-qddC_e0NT7WK6mK3","time":"2021-02-08T11:02:38.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"11:04:01\",\"Va\":227.3,\"Vb\":227.3,\"Vc\":227.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-JXlMuFNGSySLnPyZ","time":"2021-02-08T11:03:03.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"11:04:26\",\"Va\":227.2,\"Vb\":227.2,\"Vc\":227.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-8OTtvd2BSii4X7fF","time":"2021-02-08T11:03:27.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"11:04:50\",\"Va\":227.4,\"Vb\":227.4,\"Vc\":227.4,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-lNlxp4yoRo67giPh","time":"2021-02-08T11:03:52.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"11:05:15\",\"Va\":227.4,\"Vb\":227.5,\"Vc\":227.5,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":0,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-hzEuj74FQEqGfC9Q","time":"2021-02-08T11:04:17.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"11:05:40\",\"Va\":227.3,\"Vb\":227.4,\"Vc\":227.4,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-_XyaQGHeRjS8nOgA","time":"2021-02-08T11:04:41.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"11:06:05\",\"Va\":227.2,\"Vb\":227.3,\"Vc\":227.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-5876FSv9S0KNdTku","time":"2021-02-08T11:05:06.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"11:06:29\",\"Va\":227.2,\"Vb\":227.3,\"Vc\":227.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-ucfvYxH4TT-tzceL","time":"2021-02-08T11:05:31.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"11:07:41\",\"Va\":227.1,\"Vb\":227.1,\"Vc\":227.2,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-TZDdU7HkQFqSMhcD","time":"2021-02-08T11:06:43.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"11:08:06\",\"Va\":226.9,\"Vb\":226.9,\"Vc\":226.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-yEdr6oBqQnWbK5l3","time":"2021-02-08T11:07:08.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"11:08:31\",\"Va\":227,\"Vb\":227,\"Vc\":227,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-aW1WnXYuTLeiL-0-","time":"2021-02-08T11:07:35.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"13:21:35\",\"Va\":223.6,\"Vb\":223.7,\"Vc\":223.7,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-mQ7lv8pMQVuL5YJ8","time":"2021-02-08T13:20:36.000Z"}
|
||||
,{"data":"{\"tanggal\":\"2021-02-08\",\"jam\":\"13:22:01\",\"Va\":223.6,\"Vb\":223.6,\"Vc\":223.6,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-EZp6RfeQQfe3S-B-","time":"2021-02-08T13:21:05.000Z"}
|
||||
,{"data":"{\"tanggal\":\"0.0,0.0/0.0;0.0-0.0&0.0)\",\"jam\":\"#0.0,0.0/0.0;0.0-0.0&0.0)\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":13,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0,\"Eq\":1,\"Freq\":1}","ri":"cin-0RkAqfd5SKiv5igK","time":"2021-02-08T13:21:27.000Z"}
|
||||
,{"data":"{\"tanggal\":\"@0.00]0.00\",\"jam\":\"0.00)0.000^0.00$50.00_0.00%\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":0,\"PFb\":0,\"PFc\":0,\"Ep\":0,\"Eq\":1,\"Freq\":1}","ri":"cin-x5IB2PMaSL-1HzDv","time":"2021-02-08T13:21:54.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-08\",\"time\":\"13:23:48\",\"Va\":223.5,\"Vb\":223.5,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":50,\"PFb\":0,\"PFc\":0,\"Vu\":223.5,\"Cu\":223.5,\"Ep\":0,\"Eq\":0,\"Fp\":0,\"Fq\":0,\"Sp\":2,\"Sq\":0,\"Freq\":0}","ri":"cin-Hj9lGg_1R6-qixsg","time":"2021-02-08T13:23:14.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"(0.00)0.000^0.00$50.00#\",\"time\":\"0.00)0.000^0.00$50.00#2021-02-08(13:24:42\",\"Va\":223.1,\"Vb\":223.2,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":50,\"PFb\":0,\"PFc\":0,\"Vu\":223.1,\"Cu\":223.2,\"Ep\":0,\"Eq\":0,\"Fp\":0,\"Fq\":0,\"Sp\":2,\"Sq\":0,\"Freq\":0}","ri":"cin-oPtCEL5wTMO8zTw7","time":"2021-02-08T13:24:08.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"(0.00)0.000^0.00$50.00#\",\"time\":\"0.00)0.000^0.00$50.00#2021-02-08(13:25:35\",\"Va\":222.9,\"Vb\":222.9,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":50,\"PFb\":0,\"PFc\":0,\"Vu\":222.9,\"Cu\":222.9,\"Ep\":0,\"Eq\":0,\"Fp\":0,\"Fq\":0,\"Sp\":2,\"Sq\":0,\"Freq\":0}","ri":"cin-0XLt2R2hQ76eNNMo","time":"2021-02-08T13:25:01.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"(0.00)0.000^0.00$1.00_#\",\"time\":\"0.00)0.000^0.00$1.00_#0.0,0.0/0.0;0.0-0.0&0.0)\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":13,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":0,\"PFc\":0,\"Vu\":0,\"Cu\":0,\"Ep\":0,\"Eq\":0,\"Fp\":0,\"Fq\":0,\"Sp\":0,\"Sq\":0,\"Freq\":50}","ri":"cin-UPf8sk_WRaejtbAC","time":"2021-02-08T13:26:25.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-08\",\"time\":\"13:27:49\",\"Va\":222.6,\"Vb\":222.7,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":50,\"PFb\":0,\"PFc\":0,\"Vu\":2021,\"Cu\":222.7,\"Ep\":0,\"Eq\":0,\"Fp\":0,\"Fq\":0,\"Sp\":2,\"Sq\":0,\"Freq\":0}","ri":"cin-5V4QEudtSqepcwVl","time":"2021-02-08T13:27:15.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-08\",\"time\":\"13:30:34\",\"Va\":222.6,\"Vb\":222.6,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":50,\"PFb\":0,\"PFc\":0,\"Vu\":2021,\"Cu\":222.5,\"Ep\":0,\"Eq\":0,\"Fp\":0,\"Fq\":0,\"Sp\":2,\"Sq\":0,\"Freq\":0}","ri":"cin-V8UXl_smRtyII-LA","time":"2021-02-08T13:30:04.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"(0.00)0.000^0.00$50.00#\",\"time\":\"0.00)0.000^0.00$50.00#0.0,0.0/0.0;0.0-0.0&0.0)\",\"Va\":0,\"Vb\":0,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":13,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":0,\"PFc\":0,\"Vu\":0,\"Cu\":0,\"Ep\":0,\"Eq\":0,\"Fp\":0,\"Fq\":0,\"Sp\":0,\"Sq\":0,\"Freq\":50}","ri":"cin-gVKFj7SMS6Ounolf","time":"2021-02-08T13:30:39.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-08\",\"time\":\"13:32:03\",\"Va\":222.2,\"Vb\":222.3,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":50,\"PFb\":0,\"PFc\":0,\"Vu\":2021,\"Cu\":222.6,\"Ep\":0,\"Eq\":0,\"Fp\":0,\"Fq\":0,\"Sp\":2,\"Sq\":0,\"Freq\":0}","ri":"cin-CAmdGMeOTvGSlkrn","time":"2021-02-08T13:31:33.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-08\",\"time\":\"13:34:09\",\"Va\":226,\"Vb\":226,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":13,\"Sc\":0,\"St\":0,\"PFa\":50,\"PFb\":0,\"PFc\":0,\"Ep\":0,\"Eq\":0,\"Freq\":1}","ri":"cin-H3ayZKN5Q3WyXy9R","time":"2021-02-08T13:33:36.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"(0.00)0.000^0.00$50.00#\",\"time\":\"0.00)0.000^0.00$50.00#2021-02-08(13:35:03\",\"Va\":226.6,\"Vb\":226.6,\"Vc\":0,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":13,\"Sc\":0,\"St\":0,\"PFa\":50,\"PFb\":0,\"PFc\":0,\"Ep\":0,\"Eq\":0,\"Freq\":1}","ri":"cin-K_KqgebKQLecRk10","time":"2021-02-08T13:35:28.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-08\",\"time\":\"13:37:18\",\"Va\":226,\"Vb\":226.1,\"Vc\":226.1,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-Jo9O-mxyTKW5V0Jx","time":"2021-02-08T13:36:21.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-08\",\"time\":\"13:37:43\",\"Va\":226,\"Vb\":226.1,\"Vc\":226.1,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-3Z89MSicT46DZULL","time":"2021-02-08T13:36:47.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-08\",\"time\":\"13:38:08\",\"Va\":226,\"Vb\":226,\"Vc\":226,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-ayEz6AhhRRW7FRBA","time":"2021-02-08T13:37:11.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:45:15\",\"Va\":227.7,\"Vb\":227.7,\"Vc\":227.7,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-bdGo7AW2StGw3wOZ","time":"2021-02-10T12:44:14.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:45:40\",\"Va\":227.1,\"Vb\":227.1,\"Vc\":227.1,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-emNllAbuSpSEw8m8","time":"2021-02-10T12:44:37.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:46:04\",\"Va\":226.9,\"Vb\":227,\"Vc\":227,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-RytgSf1pRyKfvGBR","time":"2021-02-10T12:45:02.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:46:29\",\"Va\":226.9,\"Vb\":226.9,\"Vc\":227,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-LG8jYy90RCaP7TIF","time":"2021-02-10T12:45:27.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:46:54\",\"Va\":226.8,\"Vb\":226.9,\"Vc\":226.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-lUADqzmUQh29HI9q","time":"2021-02-10T12:45:54.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:47:19\",\"Va\":226.5,\"Vb\":226.5,\"Vc\":226.5,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-R9eT9R3USpWQV2Zl","time":"2021-02-10T12:46:16.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:47:43\",\"Va\":226.2,\"Vb\":226.3,\"Vc\":226.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-4aQIE8iHQlK7F5Ot","time":"2021-02-10T12:46:41.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:48:08\",\"Va\":226.2,\"Vb\":226.3,\"Vc\":226.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-7caJtmTbQZSOAbHW","time":"2021-02-10T12:47:06.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:48:33\",\"Va\":226.2,\"Vb\":226.3,\"Vc\":226.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-v2OY0f9NTDS6P44i","time":"2021-02-10T12:47:30.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:48:57\",\"Va\":226,\"Vb\":226.1,\"Vc\":226.1,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-PsXIF4LWSDydtbgJ","time":"2021-02-10T12:47:55.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:49:47\",\"Va\":225.9,\"Vb\":226,\"Vc\":226,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50.11}","ri":"cin-RxrE7vINQPavREJm","time":"2021-02-10T12:48:45.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:50:12\",\"Va\":225.9,\"Vb\":226,\"Vc\":226,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-2tdXXqVOQLmsi7YE","time":"2021-02-10T12:49:09.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:50:59\",\"Va\":226,\"Vb\":226,\"Vc\":226,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-WVnaFMxoRmu_E3GG","time":"2021-02-10T12:49:57.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:51:24\",\"Va\":225.8,\"Vb\":225.9,\"Vc\":225.9,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-wr2bQ3whTHi76Nxp","time":"2021-02-10T12:50:21.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:51:48\",\"Va\":226.7,\"Vb\":226.7,\"Vc\":226.8,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-ahDfoZ4NRtWRF_Ac","time":"2021-02-10T12:50:46.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:52:13\",\"Va\":226.6,\"Vb\":226.6,\"Vc\":226.7,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-laGnCifmQYu-ajix","time":"2021-02-10T12:51:11.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:52:38\",\"Va\":226.2,\"Vb\":226.3,\"Vc\":226.3,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-sxQpY56AT5yVoyQ1","time":"2021-02-10T12:51:36.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:53:03\",\"Va\":225.9,\"Vb\":226,\"Vc\":226,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-X4t88mXnSVi0YgbE","time":"2021-02-10T12:52:00.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:53:27\",\"Va\":225.9,\"Vb\":226,\"Vc\":226,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-lf_wJQKgSPKtG2zz","time":"2021-02-10T12:52:25.000Z"}
|
||||
,{"data":"{\"token\":\"\",\"date\":\"2021-02-10\",\"time\":\"12:53:52\",\"Va\":225.6,\"Vb\":225.6,\"Vc\":225.7,\"Ia\":0,\"Ib\":0,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0,\"Pc\":0,\"Pt\":0,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":0,\"Eq\":0,\"Freq\":50}","ri":"cin-BCgc1MJHSciXUZAu","time":"2021-02-10T12:52:50.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:17:48\",\"Va\":226.2,\"Vb\":226.2,\"Vc\":226.2,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-FEqVN2kuSZCwwX7C","time":"2021-03-25T09:17:37.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2165-165-165\",\"time\":\"165:165:85\",\"Va\":226.3,\"Vb\":226.3,\"Vc\":226.3,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-165,\"Qb\":165,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-nDykW94_R7KXjtvS","time":"2021-03-25T09:18:08.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2165-165-165\",\"time\":\"165:165:85\",\"Va\":226,\"Vb\":226,\"Vc\":226.1,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-165,\"Qb\":165,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-_OLIWJ8DS2yd0k10","time":"2021-03-25T09:18:31.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:19:06\",\"Va\":226.1,\"Vb\":226.1,\"Vc\":226.2,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-K9vZnrrwQ_G5te-9","time":"2021-03-25T09:18:55.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:19:30\",\"Va\":226,\"Vb\":226,\"Vc\":226.1,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-uxw0QzB_R0-t9b66","time":"2021-03-25T09:19:18.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:20:58\",\"Va\":226.2,\"Vb\":226.2,\"Vc\":226.2,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-R03Vheg9SgK2_Zp_","time":"2021-03-25T09:20:44.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:21:14\",\"Va\":226.4,\"Vb\":226.4,\"Vc\":226.4,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-uYpvAtqjTPWI8zad","time":"2021-03-25T09:21:01.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:21:31\",\"Va\":226.4,\"Vb\":226.4,\"Vc\":226.4,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-id_-H3KVRUeO3vz4","time":"2021-03-25T09:21:18.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:21:48\",\"Va\":226.3,\"Vb\":226.3,\"Vc\":226.3,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-IDUXWv1RQaqEahJ2","time":"2021-03-25T09:21:35.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:22:04\",\"Va\":226.4,\"Vb\":226.4,\"Vc\":226.4,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-PQ3g4UUQQIC8cx8E","time":"2021-03-25T09:21:51.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:22:21\",\"Va\":226.5,\"Vb\":226.5,\"Vc\":226.5,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-z66qmv8HQXeFeYxV","time":"2021-03-25T09:22:08.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:22:38\",\"Va\":226.5,\"Vb\":226.5,\"Vc\":226.5,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-iGs88cXIQYKOTp3h","time":"2021-03-25T09:22:25.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:22:55\",\"Va\":226.4,\"Vb\":226.4,\"Vc\":226.5,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-FVQkYNj-RoifPMu_","time":"2021-03-25T09:22:41.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:23:11\",\"Va\":226.4,\"Vb\":226.4,\"Vc\":226.4,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-SRcwf_6JQh6_zcfD","time":"2021-03-25T09:22:58.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:23:28\",\"Va\":227.2,\"Vb\":227.2,\"Vc\":227.2,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-nP8deUmFQaOmJhw5","time":"2021-03-25T09:23:15.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:23:45\",\"Va\":226.3,\"Vb\":226.3,\"Vc\":226.3,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-ckk1kHakTaqs-xMr","time":"2021-03-25T09:23:32.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:24:02\",\"Va\":226.3,\"Vb\":226.2,\"Vc\":226.3,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-D6Z_JueHTfqzpokE","time":"2021-03-25T09:23:48.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:24:18\",\"Va\":226.2,\"Vb\":226.2,\"Vc\":226.3,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-Og34gX4fQqi5LXIZ","time":"2021-03-25T09:24:05.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:24:35\",\"Va\":226.2,\"Vb\":226.2,\"Vc\":226.2,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-3BdRkLnaSFuWcoqY","time":"2021-03-25T09:24:22.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:24:52\",\"Va\":226.1,\"Vb\":226.1,\"Vc\":226.1,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":0,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-e68PRyQHToaak8Wi","time":"2021-03-25T09:24:39.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:25:08\",\"Va\":226.1,\"Vb\":226.1,\"Vc\":226.1,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-DX-UaTpHTNO72Sqm","time":"2021-03-25T09:24:55.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:25:25\",\"Va\":226,\"Vb\":226,\"Vc\":226,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-HMlF6QY_TRCWeui2","time":"2021-03-25T09:25:12.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:25:42\",\"Va\":226,\"Vb\":226,\"Vc\":226,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-e_evu2U1RViL5lLu","time":"2021-03-25T09:25:29.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:25:59\",\"Va\":226.1,\"Vb\":226.1,\"Vc\":226.1,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin--rsI12qGR3CYDfkr","time":"2021-03-25T09:25:45.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:26:15\",\"Va\":224.9,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-Akqb-RyqR8mRS9CV","time":"2021-03-25T09:26:02.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:26:32\",\"Va\":224.9,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-qW7dbCklSVKSMoQm","time":"2021-03-25T09:26:19.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:26:49\",\"Va\":224.9,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-MA2Po7uPSJmg3_CA","time":"2021-03-25T09:26:36.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:27:06\",\"Va\":224.9,\"Vb\":224.9,\"Vc\":224.9,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-tPyLQeRMSvGg6qGi","time":"2021-03-25T09:26:52.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:27:22\",\"Va\":224.7,\"Vb\":224.7,\"Vc\":224.8,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-qf4JIv6pQ_i94jdj","time":"2021-03-25T09:27:09.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:28:12\",\"Va\":225.9,\"Vb\":225.9,\"Vc\":225.9,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-z4BubQ4gR4u14DaE","time":"2021-03-25T09:27:59.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:28:29\",\"Va\":225.6,\"Vb\":225.6,\"Vc\":225.6,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-0mliGyRRSIidzI6V","time":"2021-03-25T09:28:16.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:28:46\",\"Va\":225.9,\"Vb\":225.9,\"Vc\":225.9,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-nz1ZCksVRWiilZiy","time":"2021-03-25T09:28:33.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:29:13\",\"Va\":225.9,\"Vb\":225.9,\"Vc\":225.9,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-PfN--oOaRR22lFcG","time":"2021-03-25T09:29:00.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:29:30\",\"Va\":226.1,\"Vb\":226.1,\"Vc\":226.1,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-867MXQzcRMSq8A4c","time":"2021-03-25T09:29:16.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:29:46\",\"Va\":226.1,\"Vb\":226.1,\"Vc\":226.1,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-DNtGddJrTWOLxGgL","time":"2021-03-25T09:29:33.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:30:03\",\"Va\":225.9,\"Vb\":225.9,\"Vc\":225.9,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-jAzMx6MIRBqIxLGF","time":"2021-03-25T09:29:50.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:30:20\",\"Va\":226,\"Vb\":226,\"Vc\":226,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-uRvotM02QGuzHnZn","time":"2021-03-25T09:30:07.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:30:37\",\"Va\":226,\"Vb\":226,\"Vc\":226,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":-3,\"Qb\":3,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-Nths6v4HQVKWXDQB","time":"2021-03-25T09:30:23.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:31:29\",\"Va\":226.6,\"Vb\":226.6,\"Vc\":226.7,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-dx5AGTk9T4yn_IzZ","time":"2021-03-25T09:31:16.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:31:46\",\"Va\":226.5,\"Vb\":226.5,\"Vc\":226.5,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-zT9y7KIYSsaZw_Ib","time":"2021-03-25T09:31:33.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:32:03\",\"Va\":226.7,\"Vb\":226.7,\"Vc\":226.7,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-LSq-yNTMTkmXMHMl","time":"2021-03-25T09:31:50.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:32:20\",\"Va\":227.1,\"Vb\":227.1,\"Vc\":227.1,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-1uwmuydwQPWebSRh","time":"2021-03-25T09:32:06.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:32:36\",\"Va\":226.4,\"Vb\":226.4,\"Vc\":226.4,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-IEewhLk8Sta9wKDF","time":"2021-03-25T09:32:23.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:32:53\",\"Va\":226.5,\"Vb\":226.5,\"Vc\":226.5,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-Y_-QWX9ZTAai9TgE","time":"2021-03-25T09:32:40.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:33:10\",\"Va\":226.2,\"Vb\":226.2,\"Vc\":226.2,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-N0Quk8DwSYCaz6PQ","time":"2021-03-25T09:32:57.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:33:26\",\"Va\":226.3,\"Vb\":226.3,\"Vc\":226.3,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-OjFqT9pwSU66rEm1","time":"2021-03-25T09:33:13.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:33:43\",\"Va\":226.9,\"Vb\":226.9,\"Vc\":226.9,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-JOd2V-QUSfiCG6Jy","time":"2021-03-25T09:33:30.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:34:00\",\"Va\":226.1,\"Vb\":226.1,\"Vc\":226.2,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-J2R3fioRRhODskJa","time":"2021-03-25T09:33:47.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:34:17\",\"Va\":226.1,\"Vb\":226.1,\"Vc\":226.1,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-H4xnu0xITtCa_3tF","time":"2021-03-25T09:34:03.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:34:33\",\"Va\":226.2,\"Vb\":226.2,\"Vc\":226.2,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-32sc668gT3yBH5Na","time":"2021-03-25T09:34:20.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:34:50\",\"Va\":225.9,\"Vb\":225.9,\"Vc\":225.9,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-mZL-gTYiTzuysAH7","time":"2021-03-25T09:34:37.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:35:07\",\"Va\":226,\"Vb\":226,\"Vc\":226,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-3fKeZ0uqRTKhQdbb","time":"2021-03-25T09:34:54.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:35:24\",\"Va\":226.1,\"Vb\":226.1,\"Vc\":226.1,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-9qyqEWdiTLCy0jep","time":"2021-03-25T09:35:10.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:35:40\",\"Va\":226.3,\"Vb\":226.3,\"Vc\":226.3,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-SfXkeaa1RyioHEJc","time":"2021-03-25T09:35:27.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:35:57\",\"Va\":226.3,\"Vb\":226.3,\"Vc\":226.3,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-YQqV3q8XSyamnN7u","time":"2021-03-25T09:35:44.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:36:14\",\"Va\":226.3,\"Vb\":226.3,\"Vc\":226.3,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-pvDaM0WdTy68So3B","time":"2021-03-25T09:36:00.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:36:30\",\"Va\":225.9,\"Vb\":225.9,\"Vc\":225.9,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-9PreGiSfQh2qoDNh","time":"2021-03-25T09:36:17.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:36:47\",\"Va\":226.1,\"Vb\":226.1,\"Vc\":226.1,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-GRKMZ0_cSsaTO4Ic","time":"2021-03-25T09:36:34.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:37:04\",\"Va\":226,\"Vb\":226,\"Vc\":226.1,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-RX_pbJwXTXKMvDXi","time":"2021-03-25T09:36:51.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:37:21\",\"Va\":225.9,\"Vb\":225.9,\"Vc\":225.9,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-STq2qS2bSJipWxKV","time":"2021-03-25T09:37:07.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-03-25\",\"time\":\"09:37:37\",\"Va\":226,\"Vb\":226,\"Vc\":226,\"Ia\":0,\"Ib\":0.14,\"Ic\":0,\"Qa\":0,\"Qb\":0,\"Qc\":0,\"Qt\":0,\"Pa\":0,\"Pb\":0.03,\"Pc\":0,\"Pt\":0.03,\"Sa\":0,\"Sb\":0.03,\"Sc\":0,\"St\":0.03,\"PFa\":1,\"PFb\":1,\"PFc\":1,\"Ep\":6,\"Freq\":50}","ri":"cin-QlkFl6YlTLaDJNVs","time":"2021-03-25T09:37:24.000Z"}
|
||||
,{"data":"{\"token\":\"cea949ea3537bc59e96b3a8ce119dfc3\",\"date\":\"2021-04-13\",\"time\":\"11:03:25\",\"Va\":\"223.5\",\"Vb\":\"223.6\",\"Vc\":\"0.0\",\"Ia\":\"1.70\",\"Ib\":\"3.50\",\"Ic\":\"0.00\",\"Qa\":\"0.31\",\"Qb\":\"0.62\",\"Qc\":\"0.00\",\"Qt\":\"0.31\",\"Pa\":\"0.07\",\"Pb\":\"0.35\",\"Pc\":\"0.00\",\"Pt\":\"0.42\",\"Sa\":\"0.31\",\"Sb\":\"0.71\",\"Sc\":\"0.00\",\"St\":\"0.52\",\"PFa\":\"0.23\",\"PFb\":\"0.49\",\"PFc\":\"0.31\",\"Ep\":\"19265.00\",\"Fp\":\"11065.00\",\"Freq\":\"50.00\"}","ri":"cin-KQcyAp5vS225xpV1","time":"2021-04-13T10:59:47.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-04-13\",\"time\":\"11:15:39\",\"Va\":\"223.5\",\"Vb\":\"223.5\",\"Vc\":\"0.0\",\"Ia\":\"1.60\",\"Ib\":\"3.50\",\"Ic\":\"0.00\",\"Qa\":\"0.31\",\"Qb\":\"0.62\",\"Qc\":\"0.00\",\"Qt\":\"0.31\",\"Pa\":\"0.07\",\"Pb\":\"0.35\",\"Pc\":\"0.00\",\"Pt\":\"0.42\",\"Sa\":\"0.31\",\"Sb\":\"0.71\",\"Sc\":\"0.00\",\"St\":\"0.52\",\"PFa\":\"0.23\",\"PFb\":\"0.50\",\"PFc\":\"0.31\",\"Ep\":\"19265.00\",\"Fp\":\"11065.00\",\"Sp\":\"11065.00\",\"Freq\":\"50.00\"}","ri":"cin-ZR0rpWEfQ02wVAHG","time":"2021-04-13T11:12:01.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-04-13\",\"time\":\"11:17:03\",\"Va\":\"223.8\",\"Vb\":\"223.8\",\"Vc\":\"0.0\",\"Ia\":\"1.60\",\"Ib\":\"3.50\",\"Ic\":\"0.00\",\"Qa\":\"0.31\",\"Qb\":\"0.62\",\"Qc\":\"0.00\",\"Qt\":\"0.31\",\"Pa\":\"0.07\",\"Pb\":\"0.35\",\"Pc\":\"0.00\",\"Pt\":\"0.42\",\"Sa\":\"0.31\",\"Sb\":\"0.71\",\"Sc\":\"0.00\",\"St\":\"0.52\",\"PFa\":\"0.23\",\"PFb\":\"0.50\",\"PFc\":\"0.31\",\"Ep\":\"19265.00\",\"Fp\":\"11065.00\",\"Sp\":\"30331.00\",\"Freq\":\"50.00\"}","ri":"cin-jXFJ859GRtW3m40C","time":"2021-04-13T11:13:24.000Z"}
|
||||
,{"data":"{\"token\":\"6cc5dc0059d39c5392784721c78d4bb3\",\"date\":\"2021-04-13\",\"time\":\"11:22:03\",\"Va\":\"223.8\",\"Vb\":\"223.8\",\"Vc\":\"0.0\",\"Ia\":\"1.70\",\"Ib\":\"3.50\",\"Ic\":\"0.00\",\"Qa\":\"0.31\",\"Qb\":\"0.63\",\"Qc\":\"0.00\",\"Qt\":\"0.31\",\"Pa\":\"0.07\",\"Pb\":\"0.35\",\"Pc\":\"0.00\",\"Pt\":\"0.42\",\"Sa\":\"0.31\",\"Sb\":\"0.71\",\"Sc\":\"0.00\",\"St\":\"0.52\",\"PFa\":\"0.22\",\"PFb\":\"0.50\",\"PFc\":\"0.31\",\"Ep\":\"19265.00\",\"Fp\":\"11065.00\",\"Sp\":\"30331.00\",\"Freq\":\"50.00\"}","ri":"cin-xNdk3heETxuG1vaC","time":"2021-04-13T11:18:26.000Z"}
|
||||
]
|
230425
infidel-code/data/rciot_data.csv
Normal file
230425
infidel-code/data/rciot_data.csv
Normal file
File diff suppressed because it is too large
Load Diff
351
infidel-code/include/ntru_crypto.h
Normal file
351
infidel-code/include/ntru_crypto.h
Normal file
@ -0,0 +1,351 @@
|
||||
/******************************************************************************
|
||||
* NTRU Cryptography Reference Source Code
|
||||
*
|
||||
* Copyright (C) 2009-2016 Security Innovation (SI)
|
||||
*
|
||||
* SI has dedicated the work to the public domain by waiving all of its rights
|
||||
* to the work worldwide under copyright law, including all related and
|
||||
* neighboring rights, to the extent allowed by law.
|
||||
*
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* You can copy, modify, distribute and perform the work, even for commercial
|
||||
* purposes, all without asking permission. You should have received a copy of
|
||||
* the creative commons license (CC0 1.0 universal) along with this program.
|
||||
* See the license file for more information.
|
||||
*
|
||||
*
|
||||
*********************************************************************************/
|
||||
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* File: ntru_crypto.h
|
||||
*
|
||||
* Contents: Public header file for NTRUEncrypt.
|
||||
*
|
||||
*****************************************************************************/
|
||||
|
||||
#ifndef NTRU_CRYPTO_H
|
||||
#define NTRU_CRYPTO_H
|
||||
|
||||
#include "ntru_crypto_platform.h"
|
||||
#include "ntru_crypto_drbg.h"
|
||||
#include "ntru_crypto_error.h"
|
||||
|
||||
#if !defined( NTRUCALL )
|
||||
#if !defined(WIN32) || defined (NTRUCRYPTO_STATIC)
|
||||
// Linux, or a Win32 static library
|
||||
#define NTRUCALL extern uint32_t
|
||||
#elif defined (NTRUCRYPTO_EXPORTS)
|
||||
// Win32 DLL build
|
||||
#define NTRUCALL extern __declspec(dllexport) uint32_t
|
||||
#else
|
||||
// Win32 DLL import
|
||||
#define NTRUCALL extern __declspec(dllimport) uint32_t
|
||||
#endif
|
||||
#endif /* NTRUCALL */
|
||||
|
||||
#if defined ( __cplusplus )
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
||||
|
||||
/* parameter set ID list */
|
||||
|
||||
typedef enum _NTRU_ENCRYPT_PARAM_SET_ID {
|
||||
NTRU_EES401EP1,
|
||||
NTRU_EES449EP1,
|
||||
NTRU_EES677EP1,
|
||||
NTRU_EES1087EP2,
|
||||
NTRU_EES541EP1,
|
||||
NTRU_EES613EP1,
|
||||
NTRU_EES887EP1,
|
||||
NTRU_EES1171EP1,
|
||||
NTRU_EES659EP1,
|
||||
NTRU_EES761EP1,
|
||||
NTRU_EES1087EP1,
|
||||
NTRU_EES1499EP1,
|
||||
NTRU_EES401EP2,
|
||||
NTRU_EES439EP1,
|
||||
NTRU_EES593EP1,
|
||||
NTRU_EES743EP1,
|
||||
NTRU_EES443EP1,
|
||||
NTRU_EES587EP1,
|
||||
} NTRU_ENCRYPT_PARAM_SET_ID;
|
||||
|
||||
|
||||
/* error codes */
|
||||
|
||||
#define NTRU_OK 0
|
||||
#define NTRU_FAIL 1
|
||||
#define NTRU_BAD_PARAMETER 2
|
||||
#define NTRU_BAD_LENGTH 3
|
||||
#define NTRU_BUFFER_TOO_SMALL 4
|
||||
#define NTRU_INVALID_PARAMETER_SET 5
|
||||
#define NTRU_BAD_PUBLIC_KEY 6
|
||||
#define NTRU_BAD_PRIVATE_KEY 7
|
||||
#define NTRU_OUT_OF_MEMORY 8
|
||||
#define NTRU_BAD_ENCODING 9
|
||||
#define NTRU_OID_NOT_RECOGNIZED 10
|
||||
#define NTRU_UNSUPPORTED_PARAM_SET 11
|
||||
|
||||
#define NTRU_RESULT(r) ((uint32_t)((r) ? NTRU_ERROR_BASE + (r) : (r)))
|
||||
#define NTRU_RET(r) return NTRU_RESULT((r))
|
||||
|
||||
|
||||
/* function declarations */
|
||||
|
||||
/* ntru_crypto_ntru_encrypt
|
||||
*
|
||||
* Implements NTRU encryption (SVES) for the parameter set specified in
|
||||
* the public key blob.
|
||||
*
|
||||
* Before invoking this function, a DRBG must be instantiated using
|
||||
* ntru_crypto_drbg_instantiate() to obtain a DRBG handle, and in that
|
||||
* instantiation the requested security strength must be at least as large
|
||||
* as the security strength of the NTRU parameter set being used.
|
||||
* Failure to instantiate the DRBG with the proper security strength will
|
||||
* result in this function returning DRBG_ERROR_BASE + DRBG_BAD_LENGTH.
|
||||
*
|
||||
* The required minimum size of the output ciphertext buffer (ct) may be
|
||||
* queried by invoking this function with ct = NULL. In this case, no
|
||||
* encryption is performed, NTRU_OK is returned, and the required minimum
|
||||
* size for ct is returned in ct_len.
|
||||
*
|
||||
* When ct != NULL, at invocation *ct_len must be the size of the ct buffer.
|
||||
* Upon return it is the actual size of the ciphertext.
|
||||
*
|
||||
* Returns NTRU_OK if successful.
|
||||
* Returns DRBG_ERROR_BASE + DRBG_BAD_PARAMETER if the DRBG handle is invalid.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BAD_PARAMETER if an argument pointer
|
||||
* (other than ct) is NULL.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BAD_LENGTH if a length argument
|
||||
* (pubkey_blob_len or pt_len) is zero, or if pt_len exceeds the
|
||||
* maximum plaintext length for the parameter set.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BAD_PUBLIC_KEY if the public-key blob is
|
||||
* invalid (unknown format, corrupt, bad length).
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BUFFER_TOO_SMALL if the ciphertext buffer
|
||||
* is too small.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_NO_MEMORY if memory needed cannot be
|
||||
* allocated from the heap.
|
||||
*/
|
||||
|
||||
NTRUCALL
|
||||
ntru_crypto_ntru_encrypt(
|
||||
DRBG_HANDLE drbg_handle, /* in - handle for DRBG */
|
||||
uint16_t pubkey_blob_len, /* in - no. of octets in public key
|
||||
blob */
|
||||
uint8_t const *pubkey_blob, /* in - pointer to public key */
|
||||
uint16_t pt_len, /* in - no. of octets in plaintext */
|
||||
uint8_t const *pt, /* in - pointer to plaintext */
|
||||
uint16_t *ct_len, /* in/out - no. of octets in ct, addr for
|
||||
no. of octets in ciphertext */
|
||||
uint8_t *ct); /* out - address for ciphertext */
|
||||
|
||||
|
||||
/* ntru_crypto_ntru_decrypt
|
||||
*
|
||||
* Implements NTRU decryption (SVES) for the parameter set specified in
|
||||
* the private key blob.
|
||||
*
|
||||
* The maximum size of the output plaintext may be queried by invoking
|
||||
* this function with pt = NULL. In this case, no decryption is performed,
|
||||
* NTRU_OK is returned, and the maximum size the plaintext could be is
|
||||
* returned in pt_len.
|
||||
* Note that until the decryption is performed successfully, the actual size
|
||||
* of the resulting plaintext cannot be known.
|
||||
*
|
||||
* When pt != NULL, at invocation *pt_len must be the size of the pt buffer.
|
||||
* Upon return it is the actual size of the plaintext.
|
||||
*
|
||||
* Returns NTRU_OK if successful.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BAD_PARAMETER if an argument pointer
|
||||
* (other than pt) is NULL.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BAD_LENGTH if a length argument
|
||||
* (privkey_blob) is zero, or if ct_len is invalid for the parameter set.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BAD_PRIVATE_KEY if the private-key blob is
|
||||
* invalid (unknown format, corrupt, bad length).
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BUFFER_TOO_SMALL if the plaintext buffer
|
||||
* is too small.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_NO_MEMORY if memory needed cannot be
|
||||
* allocated from the heap.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_FAIL if a decryption error occurs.
|
||||
*/
|
||||
|
||||
NTRUCALL
|
||||
ntru_crypto_ntru_decrypt(
|
||||
uint16_t privkey_blob_len, /* in - no. of octets in private key
|
||||
blob */
|
||||
uint8_t const *privkey_blob, /* in - pointer to private key */
|
||||
uint16_t ct_len, /* in - no. of octets in ciphertext */
|
||||
uint8_t const *ct, /* in - pointer to ciphertext */
|
||||
uint16_t *pt_len, /* in/out - no. of octets in pt, addr for
|
||||
no. of octets in plaintext */
|
||||
uint8_t *pt); /* out - address for plaintext */
|
||||
|
||||
|
||||
/* ntru_crypto_ntru_encrypt_keygen
|
||||
*
|
||||
* Implements key generation for NTRUEncrypt for the parameter set specified.
|
||||
*
|
||||
* Before invoking this function, a DRBG must be instantiated using
|
||||
* ntru_crypto_drbg_instantiate() to obtain a DRBG handle, and in that
|
||||
* instantiation the requested security strength must be at least as large
|
||||
* as the security strength of the NTRU parameter set being used.
|
||||
* Failure to instantiate the DRBG with the proper security strength will
|
||||
* result in this function returning DRBG_ERROR_BASE + DRBG_BAD_LENGTH.
|
||||
*
|
||||
* The required minimum size of the output public-key buffer (pubkey_blob)
|
||||
* may be queried by invoking this function with pubkey_blob = NULL.
|
||||
* In this case, no key generation is performed, NTRU_OK is returned, and
|
||||
* the required minimum size for pubkey_blob is returned in pubkey_blob_len.
|
||||
*
|
||||
* The required minimum size of the output private-key buffer (privkey_blob)
|
||||
* may be queried by invoking this function with privkey_blob = NULL.
|
||||
* In this case, no key generation is performed, NTRU_OK is returned, and
|
||||
* the required minimum size for privkey_blob is returned in privkey_blob_len.
|
||||
*
|
||||
* The required minimum sizes of both pubkey_blob and privkey_blob may be
|
||||
* queried as described above, in a single invocation of this function.
|
||||
*
|
||||
* When pubkey_blob != NULL and privkey_blob != NULL, at invocation
|
||||
* *pubkey_blob_len must be the size of the pubkey_blob buffer and
|
||||
* *privkey_blob_len must be the size of the privkey_blob buffer.
|
||||
* Upon return, *pubkey_blob_len is the actual size of the public-key blob
|
||||
* and *privkey_blob_len is the actual size of the private-key blob.
|
||||
*
|
||||
* Returns NTRU_OK if successful.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BAD_PARAMETER if an argument pointer
|
||||
* (other than pubkey_blob or privkey_blob) is NULL.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_INVALID_PARAMETER_SET if the parameter-set
|
||||
* ID is invalid.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BAD_LENGTH if a length argument is invalid.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BUFFER_TOO_SMALL if either the pubkey_blob
|
||||
* buffer or the privkey_blob buffer is too small.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_NO_MEMORY if memory needed cannot be
|
||||
* allocated from the heap.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_FAIL if the polynomial generated for f is
|
||||
* not invertible in (Z/qZ)[X]/(X^N - 1), which is extremely unlikely.
|
||||
* Should this occur, this function should simply be invoked again.
|
||||
*/
|
||||
|
||||
NTRUCALL
|
||||
ntru_crypto_ntru_encrypt_keygen(
|
||||
DRBG_HANDLE drbg_handle, /* in - handle of DRBG */
|
||||
NTRU_ENCRYPT_PARAM_SET_ID param_set_id, /* in - parameter set ID */
|
||||
uint16_t *pubkey_blob_len, /* in/out - no. of octets in
|
||||
pubkey_blob, addr
|
||||
for no. of octets
|
||||
in pubkey_blob */
|
||||
uint8_t *pubkey_blob, /* out - address for
|
||||
public key blob */
|
||||
uint16_t *privkey_blob_len, /* in/out - no. of octets in
|
||||
privkey_blob, addr
|
||||
for no. of octets
|
||||
in privkey_blob */
|
||||
uint8_t *privkey_blob); /* out - address for
|
||||
private key blob */
|
||||
|
||||
|
||||
/* ntru_crypto_ntru_encrypt_publicKey2SubjectPublicKeyInfo
|
||||
*
|
||||
* DER-encodes an NTRUEncrypt public-key from a public-key blob into a
|
||||
* SubjectPublicKeyInfo field for inclusion in an X.509 certificate.
|
||||
*
|
||||
* The required minimum size of the output SubjectPublicKeyInfo buffer
|
||||
* (encoded_subjectPublicKeyInfo) may be queried by invoking this function
|
||||
* with encoded_subjectPublicKeyInfo = NULL. In this case, no encoding is
|
||||
* performed, NTRU_OK is returned, and the required minimum size for
|
||||
* encoded_subjectPublicKeyInfo is returned in encoded_subjectPublicKeyInfo_len.
|
||||
*
|
||||
* When encoded_subjectPublicKeyInfo != NULL, at invocation
|
||||
* *encoded_subjectPublicKeyInfo_len must be the size of the
|
||||
* encoded_subjectPublicKeyInfo buffer.
|
||||
* Upon return, it is the actual size of the encoded public key.
|
||||
*
|
||||
* Returns NTRU_OK if successful.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BAD_PARAMETER if an argument pointer
|
||||
* (other than encoded_subjectPublicKeyInfo) is NULL.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BAD_LENGTH if pubkey_blob_len is zero.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BAD_PUBLIC_KEY if the public-key blob is
|
||||
* invalid (unknown format, corrupt, bad length).
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BUFFER_TOO_SMALL if the SubjectPublicKeyInfo
|
||||
* buffer is too small.
|
||||
*/
|
||||
|
||||
NTRUCALL
|
||||
ntru_crypto_ntru_encrypt_publicKey2SubjectPublicKeyInfo(
|
||||
uint16_t pubkey_blob_len, /* in - no. of octets in public-key
|
||||
blob */
|
||||
uint8_t const *pubkey_blob, /* in - ptr to public-key blob */
|
||||
uint16_t *encoded_subjectPublicKeyInfo_len,
|
||||
/* in/out - no. of octets in encoded info,
|
||||
address for no. of octets in
|
||||
encoded info */
|
||||
uint8_t *encoded_subjectPublicKeyInfo);
|
||||
/* out - address for encoded info */
|
||||
|
||||
|
||||
/* ntru_crypto_ntru_encrypt_subjectPublicKeyInfo2PublicKey
|
||||
*
|
||||
* Decodes a DER-encoded NTRUEncrypt public-key from a
|
||||
* SubjectPublicKeyInfo field in an X.509 certificate and returns the
|
||||
* public-key blob itself.
|
||||
*
|
||||
* The required minimum size of the output public-key buffer (pubkey_blob)
|
||||
* may be queried by invoking this function with pubkey_blob = NULL.
|
||||
* In this case, no decoding is performed, NTRU_OK is returned, and the
|
||||
* required minimum size for pubkey_blob is returned in pubkey_blob_len.
|
||||
*
|
||||
* When pubkey_blob != NULL, at invocation *pubkey_blob_len must be the
|
||||
* size of the pubkey_blob buffer.
|
||||
* Upon return, it is the actual size of the public-key blob.
|
||||
*
|
||||
* Returns NTRU_OK if successful.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BAD_LENGTH if the encoded data buffer
|
||||
* does not contain a full der prefix and public key.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BAD_PARAMETER if an argument pointer
|
||||
* (other than pubkey_blob) is NULL.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BAD_ENCODING if the encoded data is
|
||||
* an invalid encoding of an NTRU public key.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_OID_NOT_RECOGNIZED if the
|
||||
* encoded data contains an OID that identifies an object other than
|
||||
* an NTRU public key.
|
||||
* Returns NTRU_ERROR_BASE + NTRU_BUFFER_TOO_SMALL if the pubkey_blob buffer
|
||||
* is too small.
|
||||
*/
|
||||
|
||||
NTRUCALL
|
||||
ntru_crypto_ntru_encrypt_subjectPublicKeyInfo2PublicKey(
|
||||
uint8_t const *encoded_data, /* in - ptr to subjectPublicKeyInfo
|
||||
in the encoded data */
|
||||
uint16_t *pubkey_blob_len, /* in/out - no. of octets in pubkey blob,
|
||||
address for no. of octets in
|
||||
pubkey blob */
|
||||
uint8_t *pubkey_blob, /* out - address for pubkey blob */
|
||||
uint8_t **next, /* out - address for ptr to encoded
|
||||
data following the
|
||||
subjectPublicKeyInfo */
|
||||
uint32_t *remaining_data_len);/* in/out - number of bytes remaining in
|
||||
buffer *next */
|
||||
|
||||
|
||||
/* ntru_encrypt_get_param_set_name
|
||||
*
|
||||
* Returns pointer to null terminated parameter set name
|
||||
* or NULL if parameter set ID is not found.
|
||||
*/
|
||||
const char *
|
||||
ntru_encrypt_get_param_set_name(
|
||||
NTRU_ENCRYPT_PARAM_SET_ID id); /* in - parameter-set id */
|
||||
|
||||
#if defined ( __cplusplus )
|
||||
}
|
||||
#endif /* __cplusplus */
|
||||
|
||||
|
||||
#endif /* NTRU_CRYPTO_H */
|
BIN
infidel-code/include/ntru_crypto.h.gch
Normal file
BIN
infidel-code/include/ntru_crypto.h.gch
Normal file
Binary file not shown.
221
infidel-code/include/ntru_crypto_drbg.h
Normal file
221
infidel-code/include/ntru_crypto_drbg.h
Normal file
@ -0,0 +1,221 @@
|
||||
/******************************************************************************
|
||||
* NTRU Cryptography Reference Source Code
|
||||
*
|
||||
* Copyright (C) 2009-2016 Security Innovation (SI)
|
||||
*
|
||||
* SI has dedicated the work to the public domain by waiving all of its rights
|
||||
* to the work worldwide under copyright law, including all related and
|
||||
* neighboring rights, to the extent allowed by law.
|
||||
*
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* You can copy, modify, distribute and perform the work, even for commercial
|
||||
* purposes, all without asking permission. You should have received a copy of
|
||||
* the creative commons license (CC0 1.0 universal) along with this program.
|
||||
* See the license file for more information.
|
||||
*
|
||||
*
|
||||
*********************************************************************************/
|
||||
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* File: ntru_crypto_drbg.h
|
||||
*
|
||||
* Contents: Public header file for ntru_crypto_drbg.c.
|
||||
*
|
||||
*****************************************************************************/
|
||||
|
||||
|
||||
#ifndef NTRU_CRYPTO_DRBG_H
|
||||
#define NTRU_CRYPTO_DRBG_H
|
||||
|
||||
#include "ntru_crypto_platform.h"
|
||||
#include "ntru_crypto_error.h"
|
||||
|
||||
#if !defined( NTRUCALL )
|
||||
#if !defined(WIN32) || defined (NTRUCRYPTO_STATIC)
|
||||
/* Linux, or a Win32 static library */
|
||||
#define NTRUCALL extern uint32_t
|
||||
#elif defined (NTRUCRYPTO_EXPORTS)
|
||||
/* Win32 DLL build */
|
||||
#define NTRUCALL extern __declspec(dllexport) uint32_t
|
||||
#else
|
||||
/* Win32 DLL import */
|
||||
#define NTRUCALL extern __declspec(dllimport) uint32_t
|
||||
#endif
|
||||
#endif /* NTRUCALL */
|
||||
|
||||
#if defined ( __cplusplus )
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
||||
|
||||
/*******************
|
||||
* DRBG parameters *
|
||||
*******************/
|
||||
|
||||
#if !defined(DRBG_MAX_INSTANTIATIONS)
|
||||
#define DRBG_MAX_INSTANTIATIONS 4
|
||||
#endif
|
||||
#define DRBG_MAX_SEC_STRENGTH_BITS 256
|
||||
#define DRBG_MAX_BYTES_PER_BYTE_OF_ENTROPY 8
|
||||
|
||||
|
||||
/************************
|
||||
* HMAC_DRBG parameters *
|
||||
************************/
|
||||
|
||||
#define HMAC_DRBG_MAX_PERS_STR_BYTES 32
|
||||
#define HMAC_DRBG_MAX_BYTES_PER_REQUEST 1024
|
||||
|
||||
|
||||
/********************
|
||||
* type definitions *
|
||||
********************/
|
||||
|
||||
typedef uint32_t DRBG_HANDLE; /* drbg handle */
|
||||
|
||||
typedef enum { /* drbg types */
|
||||
EXTERNAL_DRBG,
|
||||
SHA256_HMAC_DRBG,
|
||||
} DRBG_TYPE;
|
||||
|
||||
typedef enum { /* entropy-function commands */
|
||||
GET_NUM_BYTES_PER_BYTE_OF_ENTROPY = 0,
|
||||
INIT,
|
||||
GET_BYTE_OF_ENTROPY,
|
||||
} ENTROPY_CMD;
|
||||
typedef uint8_t (*ENTROPY_FN)( /* get entropy function */
|
||||
ENTROPY_CMD cmd, /* command */
|
||||
uint8_t *out); /* address for output */
|
||||
|
||||
|
||||
/* Type for external PRNG functions. Must return DRBG_OK on success */
|
||||
typedef uint32_t (*RANDOM_BYTES_FN)( /* random bytes function */
|
||||
uint8_t *out, /* output buffer */
|
||||
uint32_t num_bytes); /* number of bytes */
|
||||
|
||||
|
||||
/***************
|
||||
* error codes *
|
||||
***************/
|
||||
|
||||
#define DRBG_OK 0x00000000 /* no errors */
|
||||
#define DRBG_OUT_OF_MEMORY 0x00000001 /* can't allocate memory */
|
||||
#define DRBG_BAD_PARAMETER 0x00000002 /* null pointer */
|
||||
#define DRBG_BAD_LENGTH 0x00000003 /* invalid no. of bytes */
|
||||
#define DRBG_NOT_AVAILABLE 0x00000004 /* no instantiation slot available */
|
||||
#define DRBG_ENTROPY_FAIL 0x00000005 /* entropy function failure */
|
||||
|
||||
/***************
|
||||
* error macro *
|
||||
***************/
|
||||
|
||||
#define DRBG_RESULT(r) ((uint32_t)((r) ? DRBG_ERROR_BASE + (r) : (r)))
|
||||
#define DRBG_RET(r) return DRBG_RESULT(r);
|
||||
|
||||
|
||||
/*************************
|
||||
* function declarations *
|
||||
*************************/
|
||||
|
||||
/* ntru_crypto_drbg_instantiate
|
||||
*
|
||||
* This routine instantiates a drbg with the requested security strength.
|
||||
* See ANS X9.82: Part 3-2007.
|
||||
*
|
||||
* Returns DRBG_OK if successful.
|
||||
* Returns DRBG_ERROR_BASE + DRBG_BAD_PARAMETER if an argument pointer is NULL.
|
||||
* Returns DRBG_ERROR_BASE + DRBG_BAD_LENGTH if the security strength requested
|
||||
* or the personalization string is too large.
|
||||
* Returns DRBG_ERROR_BASE + DRBG_OUT_OF_MEMORY if the internal state cannot be
|
||||
* allocated from the heap.
|
||||
*/
|
||||
|
||||
NTRUCALL
|
||||
ntru_crypto_drbg_instantiate(
|
||||
uint32_t sec_strength_bits, /* in - requested sec strength in bits */
|
||||
uint8_t const *pers_str, /* in - ptr to personalization string */
|
||||
uint32_t pers_str_bytes, /* in - no. personalization str bytes */
|
||||
ENTROPY_FN entropy_fn, /* in - pointer to entropy function */
|
||||
DRBG_HANDLE *handle); /* out - address for drbg handle */
|
||||
|
||||
/* ntru_crypto_drbg_external_instantiate
|
||||
*
|
||||
* This routine instruments an external DRBG so that ntru_crypto routines
|
||||
* can call it. randombytesfn must be of type
|
||||
* uint32_t (randombytesfn*)(unsigned char *out, unsigned long long num_bytes);
|
||||
* and should return DRBG_OK on success.
|
||||
*
|
||||
* Returns DRBG_OK if successful.
|
||||
* Returns DRBG_ERROR_BASE + DRBG_NOT_AVAILABLE if there are no instantiation
|
||||
* slots available
|
||||
* Returns DRBG_ERROR_BASE + DRBG_OUT_OF_MEMORY if the internal state cannot be
|
||||
* allocated from the heap.
|
||||
*/
|
||||
|
||||
NTRUCALL
|
||||
ntru_crypto_drbg_external_instantiate(
|
||||
RANDOM_BYTES_FN randombytesfn, /* in - pointer to random bytes function */
|
||||
DRBG_HANDLE *handle); /* out - address for drbg handle */
|
||||
|
||||
/* ntru_crypto_drbg_uninstantiate
|
||||
*
|
||||
* This routine frees a drbg given its handle.
|
||||
*
|
||||
* Returns DRBG_OK if successful.
|
||||
* Returns DRBG_ERROR_BASE + DRBG_BAD_PARAMETER if handle is not valid.
|
||||
*/
|
||||
|
||||
NTRUCALL
|
||||
ntru_crypto_drbg_uninstantiate(
|
||||
DRBG_HANDLE handle); /* in - drbg handle */
|
||||
|
||||
|
||||
/* ntru_crypto_drbg_reseed
|
||||
*
|
||||
* This routine reseeds an instantiated drbg.
|
||||
* See ANS X9.82: Part 3-2007.
|
||||
*
|
||||
* Returns DRBG_OK if successful.
|
||||
* Returns DRBG_ERROR_BASE + DRBG_BAD_PARAMETER if handle is not valid.
|
||||
* Returns NTRU_CRYPTO_HMAC errors if they occur.
|
||||
*/
|
||||
|
||||
NTRUCALL
|
||||
ntru_crypto_drbg_reseed(
|
||||
DRBG_HANDLE handle); /* in - drbg handle */
|
||||
|
||||
|
||||
/* ntru_crypto_drbg_generate
|
||||
*
|
||||
* This routine generates pseudorandom bytes using an instantiated drbg.
|
||||
* If the maximum number of requests has been reached, reseeding will occur.
|
||||
* See ANS X9.82: Part 3-2007.
|
||||
*
|
||||
* Returns DRBG_OK if successful.
|
||||
* Returns DRBG_ERROR_BASE + DRBG_BAD_PARAMETER if handle is not valid or if
|
||||
* an argument pointer is NULL.
|
||||
* Returns DRBG_ERROR_BASE + DRBG_BAD_LENGTH if the security strength requested
|
||||
* is too large or the number of bytes requested is zero or too large.
|
||||
* Returns NTRU_CRYPTO_HMAC errors if they occur.
|
||||
*/
|
||||
|
||||
NTRUCALL
|
||||
ntru_crypto_drbg_generate(
|
||||
DRBG_HANDLE handle, /* in - drbg handle */
|
||||
uint32_t sec_strength_bits, /* in - requested sec strength in bits */
|
||||
uint32_t num_bytes, /* in - number of octets to generate */
|
||||
uint8_t *out); /* out - address for generated octets */
|
||||
|
||||
|
||||
#if defined ( __cplusplus )
|
||||
}
|
||||
#endif /* __cplusplus */
|
||||
|
||||
|
||||
#endif /* NTRU_CRYPTO_DRBG_H */
|
44
infidel-code/include/ntru_crypto_error.h
Normal file
44
infidel-code/include/ntru_crypto_error.h
Normal file
@ -0,0 +1,44 @@
|
||||
/******************************************************************************
|
||||
* NTRU Cryptography Reference Source Code
|
||||
*
|
||||
* Copyright (C) 2009-2016 Security Innovation (SI)
|
||||
*
|
||||
* SI has dedicated the work to the public domain by waiving all of its rights
|
||||
* to the work worldwide under copyright law, including all related and
|
||||
* neighboring rights, to the extent allowed by law.
|
||||
*
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* You can copy, modify, distribute and perform the work, even for commercial
|
||||
* purposes, all without asking permission. You should have received a copy of
|
||||
* the creative commons license (CC0 1.0 universal) along with this program.
|
||||
* See the license file for more information.
|
||||
*
|
||||
*
|
||||
*********************************************************************************/
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* File: ntru_crypto_error.h
|
||||
*
|
||||
* Contents: Contains base values for crypto error codes.
|
||||
*
|
||||
*****************************************************************************/
|
||||
|
||||
|
||||
#ifndef NTRU_CRYPTO_ERROR_H
|
||||
#define NTRU_CRYPTO_ERROR_H
|
||||
|
||||
/* define base values for crypto error codes */
|
||||
|
||||
#define HASH_ERROR_BASE ((uint32_t)0x00000100)
|
||||
#define HMAC_ERROR_BASE ((uint32_t)0x00000200)
|
||||
#define SHA_ERROR_BASE ((uint32_t)0x00000400)
|
||||
#define DRBG_ERROR_BASE ((uint32_t)0x00000a00)
|
||||
#define NTRU_ERROR_BASE ((uint32_t)0x00003000)
|
||||
#define MGF1_ERROR_BASE ((uint32_t)0x00004100)
|
||||
|
||||
#endif /* NTRU_CRYPTO_ERROR_H */
|
98
infidel-code/include/ntru_crypto_platform.h
Normal file
98
infidel-code/include/ntru_crypto_platform.h
Normal file
@ -0,0 +1,98 @@
|
||||
/******************************************************************************
|
||||
* NTRU Cryptography Reference Source Code
|
||||
*
|
||||
* Copyright (C) 2009-2016 Security Innovation (SI)
|
||||
*
|
||||
* SI has dedicated the work to the public domain by waiving all of its rights
|
||||
* to the work worldwide under copyright law, including all related and
|
||||
* neighboring rights, to the extent allowed by law.
|
||||
*
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* You can copy, modify, distribute and perform the work, even for commercial
|
||||
* purposes, all without asking permission. You should have received a copy of
|
||||
* the creative commons license (CC0 1.0 universal) along with this program.
|
||||
* See the license file for more information.
|
||||
*
|
||||
*
|
||||
*********************************************************************************/
|
||||
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* File: ntru_crypto_platform.h
|
||||
*
|
||||
* Contents: Platform-specific basic definitions.
|
||||
*
|
||||
*****************************************************************************/
|
||||
|
||||
#ifndef NTRU_CRYPTO_PLATFORM_H
|
||||
#define NTRU_CRYPTO_PLATFORM_H
|
||||
|
||||
/* The default implementation is to use stdint.h, a part of the C99 standard.
|
||||
* Systems that don't support this are handled on a case-by-case basis.
|
||||
*/
|
||||
|
||||
#if defined(WIN32) && (_MSC_VER < 1600)
|
||||
|
||||
#include <basetsd.h>
|
||||
typedef unsigned char uint8_t;
|
||||
typedef signed char int8_t;
|
||||
typedef unsigned short int uint16_t;
|
||||
typedef short int int16_t;
|
||||
typedef UINT32 uint32_t;
|
||||
typedef UINT64 uint64_t;
|
||||
|
||||
#elif defined(linux) && defined(__KERNEL__)
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
#else
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
/* For linux kernel drivers:
|
||||
* Use kmalloc and kfree in place of malloc / free
|
||||
* Use BUG_ON in place of assert */
|
||||
#if defined(linux) && defined(__KERNEL__)
|
||||
|
||||
# include <linux/kernel.h>
|
||||
# include <linux/module.h>
|
||||
# include <linux/slab.h>
|
||||
# include <linux/string.h>
|
||||
# define MALLOC(size) (kmalloc(size, GFP_KERNEL))
|
||||
# define FREE(x) (kfree(x))
|
||||
|
||||
#else
|
||||
|
||||
# include <stdlib.h>
|
||||
# include <assert.h>
|
||||
# include <string.h>
|
||||
# define MALLOC(size) (malloc(size))
|
||||
# define FREE(x) (free(x))
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
#if !defined(HAVE_BOOL) && !defined(__cplusplus)
|
||||
#define HAVE_BOOL
|
||||
typedef uint8_t bool;
|
||||
#endif /* HAVE_BOOL */
|
||||
|
||||
#ifndef TRUE
|
||||
#define TRUE 1
|
||||
#endif
|
||||
|
||||
#ifndef FALSE
|
||||
#define FALSE 0
|
||||
#endif
|
||||
|
||||
|
||||
#endif /* NTRU_CRYPTO_PLATFORM_H */
|
BIN
infidel-code/keys/key-401.priv
Normal file
BIN
infidel-code/keys/key-401.priv
Normal file
Binary file not shown.
BIN
infidel-code/keys/key-401.pub
Normal file
BIN
infidel-code/keys/key-401.pub
Normal file
Binary file not shown.
BIN
infidel-code/keys/key-593.priv
Normal file
BIN
infidel-code/keys/key-593.priv
Normal file
Binary file not shown.
BIN
infidel-code/keys/key-593.pub
Normal file
BIN
infidel-code/keys/key-593.pub
Normal file
Binary file not shown.
27
infidel-code/py_wrappers/GENKEY_RSA.py
Normal file
27
infidel-code/py_wrappers/GENKEY_RSA.py
Normal file
@ -0,0 +1,27 @@
|
||||
import time
|
||||
from Crypto.Hash import SHA256
|
||||
from Crypto.PublicKey import RSA
|
||||
from Crypto.Signature import PKCS1_v1_5
|
||||
|
||||
def rsa3072():
|
||||
start = time.time()
|
||||
key = RSA.generate(2048)
|
||||
end = time.time()-start
|
||||
with open('RSA3072_priv.pem','wb') as a:
|
||||
a.write(key.exportKey('PEM'))
|
||||
with open('RSA3072_pub.pem','wb') as b:
|
||||
b.write(key.publickey().exportKey('PEM'))
|
||||
print("Time spent RSA 3072 ", end)
|
||||
|
||||
def rsa7680():
|
||||
start = time.time()
|
||||
key = RSA.generate(7680)
|
||||
end = time.time()-start
|
||||
with open('RSA7680_priv.pem','wb') as c:
|
||||
c.write(key.exportKey('PEM'))
|
||||
with open('RSA7680_pub.pem','wb') as d:
|
||||
d.write(key.publickey().exportKey('PEM'))
|
||||
print("Time spent rsa7680 : ", end)
|
||||
|
||||
rsa3072()
|
||||
rsa7680()
|
98
infidel-code/py_wrappers/Publish_Encrypted.py
Normal file
98
infidel-code/py_wrappers/Publish_Encrypted.py
Normal file
@ -0,0 +1,98 @@
|
||||
import paho.mqtt.client as paho
|
||||
# from simplecrypt import encrypt, decrypt
|
||||
import base64
|
||||
from ctypes import *
|
||||
import _ctypes
|
||||
from textwrap import wrap
|
||||
|
||||
|
||||
# Konfigurasi MQTT server
|
||||
# broker = "192.168.43.134"
|
||||
broker = "nnag.xyz"
|
||||
client = paho.Client()
|
||||
port = 1883
|
||||
|
||||
def u_encrypt(arg):
|
||||
so_file = 'EES401/URG_encrypt.so'
|
||||
u_enc = CDLL(so_file)
|
||||
u_enc.main.restype = c_double
|
||||
u_enc.main.argtype = c_char_p
|
||||
str_temp = "07"
|
||||
c_return = u_enc.main(arg.encode('utf-8'), str_temp.encode('utf-8'))
|
||||
print("Python Log : C Return ", c_return)
|
||||
_ctypes.dlclose(u_enc._handle)
|
||||
|
||||
def u_decrypt(arg):
|
||||
# arg = base64.b64decode(arg)
|
||||
so_file2 = './URG_decrypt.so'
|
||||
arg_len = len(arg)
|
||||
arg = c_char_p(arg)
|
||||
print("Python Log : Current Cipher ", arg)
|
||||
print("Python Log : Length to be Dec ", arg_len)
|
||||
u_dec = CDLL(so_file2)
|
||||
u_dec.main.restype = c_char_p
|
||||
u_dec.main.argtype = c_char_p
|
||||
c_return = u_dec.main(arg)
|
||||
_ctypes.dlclose(u_dec._handle)
|
||||
return c_return
|
||||
|
||||
def file_handler(f_name, num):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./cipher/"+f_name+"_"+num+".dat", "rb")
|
||||
return f.read()
|
||||
|
||||
# Proses enkripsi
|
||||
def payload_process(plain):
|
||||
u_encrypt(plain)
|
||||
plain = file_handler("cipher_EES401", 7)
|
||||
print("Python LOG Cipher Length : ", len(plain))
|
||||
send_data = base64.b64encode(plain)
|
||||
return send_data
|
||||
|
||||
def plain_handler(f_name, num):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./plain/"+f_name+"_"+num+".txt", "r")
|
||||
return f.read()
|
||||
|
||||
|
||||
# Add this to test the Blacklist feature
|
||||
# blacklist_trigger = base64.b64encode(b"I'm gonna make this program crash!"*10)
|
||||
# cipher_arr.append(blacklist_trigger)
|
||||
# msg_data = blacklist_trigger
|
||||
|
||||
# ======================== || START FROM HERE BUDDY || ==================
|
||||
n = input("Enter number of plain : ")
|
||||
n = int(n)
|
||||
for i in range(1, n+1):
|
||||
plain = plain_handler("plain", i)
|
||||
i = 0
|
||||
my_ip = "device01"
|
||||
identifier = "&"
|
||||
f_name = "cipher_EES401"
|
||||
plain_arr = []
|
||||
cipher_arr = []
|
||||
# plain = input("Enter plain : ")
|
||||
# plain = "This message is longer than 4 char"
|
||||
x = 16 - (len(plain) % 4)
|
||||
plain = plain+(" "*x)
|
||||
plain_arr = wrap(plain, 16, replace_whitespace=False, drop_whitespace=False)
|
||||
print("Join List Test ", ''.join(plain_arr))
|
||||
client.connect(broker,port)
|
||||
# plain_now = plain_arr[1]
|
||||
|
||||
for i in range(len(plain_arr)):
|
||||
data_now = payload_process(plain_arr[i])
|
||||
cipher_arr.append(data_now)
|
||||
print("Plain now : ", plain)
|
||||
|
||||
msg_data = b''.join(cipher_arr)
|
||||
# send_data = my_ip+identifier+msg_data.decode('ascii')
|
||||
send_data = msg_data.decode('ascii')
|
||||
# print("Python LOG Plain : ", plain)
|
||||
print("Python LOG Plain Length : ", len(plain))
|
||||
print("Sending Cipher with length ", len(send_data))
|
||||
print("Python LOG Plain Array : ", plain_arr)
|
||||
# print("Python LOG Cipher Length : ", len(send_data))
|
||||
client.publish("device01/msg", send_data)
|
||||
# test_str = "Test String"
|
||||
# client.publish("device01/msg", base64.b64encode(test_str.encode("utf-8")) )
|
100
infidel-code/py_wrappers/Publish_Encrypted_SM.py
Normal file
100
infidel-code/py_wrappers/Publish_Encrypted_SM.py
Normal file
@ -0,0 +1,100 @@
|
||||
import paho.mqtt.client as paho
|
||||
#from simplecrypt import encrypt, decrypt
|
||||
import base64
|
||||
from ctypes import *
|
||||
import _ctypes
|
||||
from textwrap import wrap
|
||||
|
||||
|
||||
# Konfigurasi MQTT server
|
||||
broker = "localhost"
|
||||
client = paho.Client()
|
||||
port = 1883
|
||||
|
||||
def u_encrypt(arg):
|
||||
so_file = 'EES401/URG_encrypt.so'
|
||||
u_enc = CDLL(so_file)
|
||||
u_enc.main.restype = c_double
|
||||
u_enc.main.argtype = c_char_p
|
||||
str_temp = "07"
|
||||
c_return = u_enc.main(arg.encode('utf-8'), str_temp.encode('utf-8'))
|
||||
print("Python Log, C Return : ", c_return)
|
||||
_ctypes.dlclose(u_enc._handle)
|
||||
|
||||
def u_decrypt(arg):
|
||||
#arg = base64.b64decode(arg)
|
||||
so_file2 = './URG_decrypt.so'
|
||||
arg_len = len(arg)
|
||||
arg = c_char_p(arg)
|
||||
print("Python Log : Current Cipher ", arg)
|
||||
print("Python Log : Length to be Dec ", arg_len)
|
||||
u_dec = CDLL(so_file2)
|
||||
u_dec.main.restype = c_char_p
|
||||
u_dec.main.argtype = c_char_p
|
||||
c_return = u_dec.main(arg)
|
||||
_ctypes.dlclose(u_dec._handle)
|
||||
return c_return
|
||||
|
||||
def file_handler(f_name, num):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./cipher/"+f_name+"_"+num+".dat", "rb")
|
||||
return f.read()
|
||||
|
||||
#Proses enkripsi
|
||||
def payload_process(plain):
|
||||
u_encrypt(plain)
|
||||
plain = file_handler("cipher_EES401", 7)
|
||||
print("Cipher Length : ", len(plain))
|
||||
send_data = base64.b64encode(plain)
|
||||
return send_data
|
||||
|
||||
def plain_handler(f_name, num):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./plain/"+f_name+"_"+num+".txt", "r")
|
||||
return f.read()
|
||||
|
||||
|
||||
# Add this to test the Blacklist feature
|
||||
# blacklist_trigger = base64.b64encode(b"I'm gonna make this program crash!"*10)
|
||||
# cipher_arr.append(blacklist_trigger)
|
||||
# msg_data = blacklist_trigger
|
||||
|
||||
# ======================== || START FROM HERE BUDDY || ==================
|
||||
plain = input("Enter The Message : ")
|
||||
plain_ori = plain
|
||||
# plain = plain_handler("plain", i)
|
||||
i = 0
|
||||
my_ip = "device01"
|
||||
identifier = "&"
|
||||
f_name = "cipher_EES401"
|
||||
plain_arr = []
|
||||
cipher_arr = []
|
||||
# plain = input("Enter plain : ")
|
||||
# plain = "This message is longer than 4 char"
|
||||
x = 16 - (len(plain)%16)
|
||||
plain = plain+(" "*x)
|
||||
plain_arr = wrap(plain, 16, replace_whitespace=False, drop_whitespace=False)
|
||||
# print("Join List Test ", ''.join(plain_arr))
|
||||
client.connect(broker,port)
|
||||
# plain_now = plain_arr[1]
|
||||
|
||||
for i in range(len(plain_arr)):
|
||||
print(" ")
|
||||
print("===== [ Sequence "+str(i)+" ] "+"======================================================")
|
||||
data_now = payload_process(plain_arr[i])
|
||||
cipher_arr.append(data_now)
|
||||
|
||||
msg_data = b''.join(cipher_arr)
|
||||
# send_data = my_ip+identifier+msg_data.decode('ascii')
|
||||
send_data = msg_data.decode('ascii')
|
||||
# print("Python LOG Plain : ", plain)
|
||||
print(" ")
|
||||
print("===== Result ======================================================")
|
||||
print("Python LOG Plain Length : ", len(plain_ori))
|
||||
print("Python LOG Plain with Padding Length : ", len(plain))
|
||||
print("Sending Cipher with length : ", len(send_data))
|
||||
print("Python LOG Plain Array : ", plain_arr)
|
||||
# print("Python LOG Cipher Length : ", len(send_data))
|
||||
client.publish("device01/msg", send_data)
|
||||
# test_str = "Test String"
|
||||
# client.publish("device01/msg", base64.b64encode(test_str.encode("utf-8")) )
|
156
infidel-code/py_wrappers/Publish_rciot.py
Normal file
156
infidel-code/py_wrappers/Publish_rciot.py
Normal file
@ -0,0 +1,156 @@
|
||||
import paho.mqtt.client as paho
|
||||
import paho.mqtt.publish as pahopub
|
||||
#from simplecrypt import encrypt, decrypt
|
||||
import base64
|
||||
from ctypes import *
|
||||
import _ctypes
|
||||
from textwrap import wrap
|
||||
import time
|
||||
import csv
|
||||
from Crypto.PublicKey import RSA
|
||||
from Crypto.Cipher import PKCS1_OAEP as Cipher
|
||||
|
||||
|
||||
# Konfigurasi MQTT server
|
||||
broker = "nnag.xyz"
|
||||
client = paho.Client()
|
||||
port = 1883
|
||||
|
||||
def u_encrypt(arg):
|
||||
so_file = 'EES401/URG_encrypt.so'
|
||||
u_enc = CDLL(so_file)
|
||||
u_enc.main.restype = c_double
|
||||
u_enc.main.argtype = c_char_p
|
||||
str_temp = "07"
|
||||
c_return = u_enc.main(arg.encode('utf-8'), str_temp.encode('utf-8'))
|
||||
print("Python Log, C Return : ", c_return)
|
||||
# time.sleep(0.01)
|
||||
_ctypes.dlclose(u_enc._handle)
|
||||
|
||||
return c_return
|
||||
|
||||
|
||||
def rsa_encrypt(plain):
|
||||
|
||||
rsa3072 = open("RSA3072_pub.pem", "r").read()
|
||||
start=time.perf_counter()
|
||||
rsa_pub = RSA.importKey(rsa3072)
|
||||
rsa_pub = Cipher.new(rsa_pub)
|
||||
RSA_enc = rsa_pub.encrypt(plain.encode('utf8'))
|
||||
# RSA_enc = rsa_pub.encrypt(plain)
|
||||
#RSA_enc = rsa_pub.encrypt(plain.encode('utf8'), 32)
|
||||
end=time.perf_counter()-start
|
||||
cipher = RSA_enc
|
||||
# cipher = str(cipher).encode('utf-8')
|
||||
# rsa_file_handler(base_name_RSA3, i, cipher)
|
||||
print("RSA Encryption Time : ", end)
|
||||
print("Cipher ", cipher)
|
||||
print("Length ", len(cipher))
|
||||
print(" ")
|
||||
|
||||
return end, cipher
|
||||
|
||||
|
||||
def file_handler(f_name, num):
|
||||
# num = str(num).zfill(2)
|
||||
# f = open("./cipher/"+f_name+"_"+num+".dat", "rb")
|
||||
f = open("/tmp/cipher_07.dat", "rb")
|
||||
ret = f.read()
|
||||
f.close()
|
||||
return ret
|
||||
|
||||
# def rsa_file_handler(f_name, num, cipher):
|
||||
# num = str(num).zfill(2)
|
||||
# f = open("./cipher/"+f_name+"_"+num+".dat", "wb")
|
||||
# f.write(cipher)
|
||||
|
||||
#Proses enkripsi
|
||||
def payload_process(plain):
|
||||
dec_time = u_encrypt(plain)
|
||||
# cipher = u_encrypt(plain)
|
||||
# time.sleep(0.05)
|
||||
cipher = file_handler("cipher_EES401", 7)
|
||||
# print("Cipher Length : ", len(plain))
|
||||
send_data = base64.b64encode(cipher)
|
||||
return send_data, dec_time
|
||||
|
||||
def payload_RSA(plain):
|
||||
dec_time, cipher = rsa_encrypt(plain)
|
||||
# cipher = u_encrypt(plain)
|
||||
# time.sleep(0.05)
|
||||
# cipher = rsa_file_handler("cipher_EES401", 7)
|
||||
# print("Cipher Length : ", len(plain))
|
||||
send_data = base64.b64encode(cipher)
|
||||
return send_data, dec_time
|
||||
|
||||
def plain_handler(f_name, num):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./plain/"+f_name+"_"+num+".txt", "r")
|
||||
return f.read()
|
||||
|
||||
|
||||
# Add this to test the Blacklist feature
|
||||
# blacklist_trigger = base64.b64encode(b"I'm gonna make this program crash!"*10)
|
||||
# cipher_arr.append(blacklist_trigger)
|
||||
# msg_data = blacklist_trigger
|
||||
|
||||
# ======================== || START FROM HERE BUDDY || ==================
|
||||
|
||||
def main(msg):
|
||||
# plain = input("Enter The Message : ")
|
||||
plain = msg
|
||||
plain_ori = plain
|
||||
# plain = plain_handler("plain", i)
|
||||
i = 0
|
||||
my_ip = "device01"
|
||||
identifier = "&"
|
||||
f_name = "cipher_EES401"
|
||||
plain_arr = []
|
||||
cipher_arr = []
|
||||
# plain = input("Enter plain : ")
|
||||
# plain = "This message is longer than 4 char"
|
||||
x = 16 - (len(plain)%16)
|
||||
plain = plain+(" "*x)
|
||||
plain_arr = wrap(plain, 16, replace_whitespace=False, drop_whitespace=False)
|
||||
# print("Join List Test ", ''.join(plain_arr))
|
||||
# client.tls_set()
|
||||
# client.username_pw_set(username="aaa", password="pass")
|
||||
status = client.connect(broker,port)
|
||||
print("Connection status, ", status)
|
||||
# input()
|
||||
# plain_now = plain_arr[1]
|
||||
time_tmp = []
|
||||
for i in range(len(plain_arr)):
|
||||
# print(" ")
|
||||
# print("===== [ Sequence "+str(i)+" ] "+"======================================================")
|
||||
# data_now, dec_time = payload_process(plain_arr[i])
|
||||
data_now, dec_time = payload_RSA(plain_arr[i])
|
||||
cipher_arr.append(data_now)
|
||||
time_tmp.append(dec_time)
|
||||
|
||||
dec_acc = sum(map(float, time_tmp))
|
||||
xxx = (base64.b64decode(cipher_arr[0]))
|
||||
print(len(xxx))
|
||||
print(len(data_now))
|
||||
msg_data = b''.join(cipher_arr)
|
||||
# send_data = my_ip+identifier+msg_data.decode('ascii')
|
||||
send_data = msg_data.decode('ascii')
|
||||
# print("Python LOG Plain : ", plain)
|
||||
# print(" ")
|
||||
# print("===== Result ======================================================")
|
||||
# print("Python LOG Plain Length : ", len(plain_ori))
|
||||
# print("Python LOG Plain with Padding Length : ", len(plain))
|
||||
# print("Sending Cipher with length : ", len(send_data))
|
||||
# print("Python LOG Plain Array : ", plain_arr)
|
||||
# print("Python LOG Cipher Length : ", len(send_data))
|
||||
# client.publish("device01/msg", "XXXXX")
|
||||
print(len(send_data));
|
||||
client.loop_start()
|
||||
# client.connect("nnag.xyz", 1883)
|
||||
# pahopub.single("device01/msg", "xxxx")
|
||||
client.publish("device01/msg", msg_data)
|
||||
|
||||
return dec_acc
|
||||
|
||||
# test_str = "Test String"
|
||||
# client.publish("device01/msg", base64.b64encode(test_str.encode("utf-8")) )
|
224
infidel-code/py_wrappers/Publish_rciot_AES.py
Normal file
224
infidel-code/py_wrappers/Publish_rciot_AES.py
Normal file
@ -0,0 +1,224 @@
|
||||
import paho.mqtt.client as paho
|
||||
from cryptography.hazmat.primitives.kdf.pbkdf2 import PBKDF2HMAC
|
||||
import paho.mqtt.publish as pahopub
|
||||
#from simplecrypt import encrypt, decrypt
|
||||
from cryptography.fernet import Fernet
|
||||
from cryptography.hazmat.backends import default_backend
|
||||
from cryptography.hazmat.primitives import hashes
|
||||
import base64
|
||||
from ctypes import *
|
||||
import _ctypes
|
||||
from textwrap import wrap
|
||||
import time
|
||||
import csv
|
||||
from Crypto.Cipher import AES
|
||||
from Crypto.PublicKey import RSA
|
||||
from Crypto.Cipher import PKCS1_OAEP as Cipher
|
||||
|
||||
|
||||
# Konfigurasi MQTT server
|
||||
broker = "nnag.xyz"
|
||||
client = paho.Client()
|
||||
port = 1883
|
||||
aes_key = "1234123412341234"
|
||||
IV = 16*"\x00"
|
||||
|
||||
def fernet_keygen():
|
||||
password="urg123"
|
||||
pass_byte=password.encode()
|
||||
salt=b'salt_'
|
||||
kdf = PBKDF2HMAC(
|
||||
algorithm=hashes.SHA256(),
|
||||
length=32,
|
||||
salt=salt,
|
||||
iterations=100,
|
||||
backend=default_backend()
|
||||
)
|
||||
key = base64.urlsafe_b64encode(kdf.derive(pass_byte))
|
||||
return key
|
||||
|
||||
def fernet_encrypt(plain):
|
||||
time_s = time.perf_counter()
|
||||
fernet_key = fernet_keygen()
|
||||
send_data = Fernet(fernet_key).encrypt(plain.encode())
|
||||
time_e = time.perf_counter()
|
||||
end = time_e - time_s
|
||||
|
||||
print("Fernet Plain Length : ",len(plain))
|
||||
print("Fernet Key Length : ",len(fernet_key))
|
||||
print("Fernet Encryption Time : ",end)
|
||||
print(" ")
|
||||
return end, send_data
|
||||
|
||||
def aes_encrypt(plain):
|
||||
start = time.perf_counter()
|
||||
key = AES.new(aes_key.encode("utf-8"), AES.MODE_CBC, IV=IV.encode("utf-8"))
|
||||
# cipher = key.encrypt(plain.encode("utf-8"))
|
||||
# plain = "x"*16
|
||||
print(len(plain))
|
||||
x = 16 - (len(plain) % 16)
|
||||
plain = plain+" "*x
|
||||
print(x)
|
||||
# input()
|
||||
cipher = key.encrypt(plain.encode("utf-8"))
|
||||
end = time.perf_counter()-start
|
||||
|
||||
return end, cipher
|
||||
|
||||
def u_encrypt(arg):
|
||||
so_file = 'EES401/URG_encrypt.so'
|
||||
u_enc = CDLL(so_file)
|
||||
u_enc.main.restype = c_double
|
||||
u_enc.main.argtype = c_char_p
|
||||
str_temp = "07"
|
||||
c_return = u_enc.main(arg.encode('utf-8'), str_temp.encode('utf-8'))
|
||||
print("Python Log, C Return : ", c_return)
|
||||
# time.sleep(0.01)
|
||||
_ctypes.dlclose(u_enc._handle)
|
||||
|
||||
return c_return
|
||||
|
||||
|
||||
def rsa_encrypt(plain):
|
||||
|
||||
rsa3072 = open("RSA7680_pub.pem", "r").read()
|
||||
start=time.perf_counter()
|
||||
rsa_pub = RSA.importKey(rsa3072)
|
||||
rsa_pub = Cipher.new(rsa_pub)
|
||||
RSA_enc = rsa_pub.encrypt(plain.encode('utf8'))
|
||||
# RSA_enc = rsa_pub.encrypt(plain)
|
||||
#RSA_enc = rsa_pub.encrypt(plain.encode('utf8'), 32)
|
||||
end=time.perf_counter()-start
|
||||
cipher = RSA_enc
|
||||
# cipher = str(cipher).encode('utf-8')
|
||||
# rsa_file_handler(base_name_RSA3, i, cipher)
|
||||
print("RSA Encryption Time : ", end)
|
||||
print("Cipher ", cipher)
|
||||
print("Length ", len(cipher))
|
||||
print(" ")
|
||||
|
||||
return end, cipher
|
||||
|
||||
|
||||
def file_handler(f_name, num):
|
||||
# num = str(num).zfill(2)
|
||||
# f = open("./cipher/"+f_name+"_"+num+".dat", "rb")
|
||||
f = open("/tmp/cipher_07.dat", "rb")
|
||||
ret = f.read()
|
||||
f.close()
|
||||
return ret
|
||||
|
||||
# def rsa_file_handler(f_name, num, cipher):
|
||||
# num = str(num).zfill(2)
|
||||
# f = open("./cipher/"+f_name+"_"+num+".dat", "wb")
|
||||
# f.write(cipher)
|
||||
|
||||
#Proses enkripsi
|
||||
def payload_process(plain):
|
||||
dec_time = u_encrypt(plain)
|
||||
# cipher = u_encrypt(plain)
|
||||
# time.sleep(0.05)
|
||||
cipher = file_handler("cipher_EES401", 7)
|
||||
# print("Cipher Length : ", len(plain))
|
||||
send_data = base64.b64encode(cipher)
|
||||
return send_data, dec_time
|
||||
|
||||
def payload_aes(plain):
|
||||
|
||||
dec_time, cipher = aes_encrypt(plain)
|
||||
send_data = base64.b64encode(cipher)
|
||||
return send_data, dec_time
|
||||
|
||||
def payload_fernet(plain):
|
||||
dec_time, cipher = fernet_encrypt(plain)
|
||||
send_data = base64.b64encode(cipher)
|
||||
return send_data, dec_time
|
||||
|
||||
def payload_RSA(plain):
|
||||
dec_time, cipher = rsa_encrypt(plain)
|
||||
# cipher = u_encrypt(plain)
|
||||
# time.sleep(0.05)
|
||||
# cipher = rsa_file_handler("cipher_EES401", 7)
|
||||
# print("Cipher Length : ", len(plain))
|
||||
send_data = base64.b64encode(cipher)
|
||||
return send_data, dec_time
|
||||
|
||||
def plain_handler(f_name, num):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./plain/"+f_name+"_"+num+".txt", "r")
|
||||
return f.read()
|
||||
|
||||
|
||||
# Add this to test the Blacklist feature
|
||||
# blacklist_trigger = base64.b64encode(b"I'm gonna make this program crash!"*10)
|
||||
# cipher_arr.append(blacklist_trigger)
|
||||
# msg_data = blacklist_trigger
|
||||
|
||||
# ======================== || START FROM HERE BUDDY || ==================
|
||||
def main(msg):
|
||||
# plain = input("Enter The Message : ")
|
||||
plain = msg
|
||||
plain_ori = plain
|
||||
# plain = plain_handler("plain", i)
|
||||
i = 0
|
||||
my_ip = "device01"
|
||||
identifier = "&"
|
||||
f_name = "cipher_EES401"
|
||||
plain_arr = []
|
||||
cipher_arr = []
|
||||
# plain = input("Enter plain : ")
|
||||
# plain = "This message is longer than 4 char"
|
||||
# x = 16 - (len(plain)%16)
|
||||
# plain = plain+(" "*x)
|
||||
# plain_arr = wrap(plain, 16, replace_whitespace=False, drop_whitespace=False)
|
||||
# print("Join List Test ", ''.join(plain_arr))
|
||||
# client.tls_set()
|
||||
# client.username_pw_set(username="aaa", password="pass")
|
||||
status = client.connect(broker,port)
|
||||
print("Connection status, ", status)
|
||||
# input()
|
||||
# plain_now = plain_arr[1]
|
||||
time_tmp = []
|
||||
|
||||
# ******************************8
|
||||
# for i in range(len(plain_arr)):
|
||||
# # print(" ")
|
||||
# # print("===== [ Sequence "+str(i)+" ] "+"======================================================")
|
||||
# # data_now, dec_time = payload_process(plain_arr[i])
|
||||
# # data_now, dec_time = payload_RSA(plain_arr[i])
|
||||
# data_now, dec_time = payload_fernet(plain_arr[i])
|
||||
# cipher_arr.append(data_now)
|
||||
# time_tmp.append(dec_time)
|
||||
|
||||
# dec_acc = sum(map(float, time_tmp))
|
||||
# xxx = (base64.b64decode(cipher_arr[0]))
|
||||
# print("cipher len : ",len(xxx))
|
||||
# print("base64 cipher len : ",len(data_now))
|
||||
|
||||
# msg_data = b''.join(cipher_arr)
|
||||
# ******************************8
|
||||
|
||||
# send_data = my_ip+identifier+msg_data.decode('ascii')
|
||||
# msg_data, dec_time = payload_fernet(plain)
|
||||
msg_data, dec_time = payload_aes(plain)
|
||||
send_data = msg_data.decode('ascii')
|
||||
# print("Python LOG Plain : ", plain)
|
||||
# print(" ")
|
||||
# print("===== Result ======================================================")
|
||||
# print("Python LOG Plain Length : ", len(plain_ori))
|
||||
# print("Python LOG Plain with Padding Length : ", len(plain))
|
||||
# print("Sending Cipher with length : ", len(send_data))
|
||||
# print("Python LOG Plain Array : ", plain_arr)
|
||||
# print("Python LOG Cipher Length : ", len(send_data))
|
||||
# client.publish("device01/msg", "XXXXX")
|
||||
client.loop_start()
|
||||
print("Total sent data ", len(send_data));
|
||||
# client.connect("nnag.xyz", 1883)
|
||||
# pahopub.single("device01/msg", "xxxx")
|
||||
client.publish("device01/msg", msg_data)
|
||||
# input()
|
||||
|
||||
return dec_time
|
||||
|
||||
# test_str = "Test String"
|
||||
# client.publish("device01/msg", base64.b64encode(test_str.encode("utf-8")) )
|
199
infidel-code/py_wrappers/Publish_rciot_Fnet.py
Normal file
199
infidel-code/py_wrappers/Publish_rciot_Fnet.py
Normal file
@ -0,0 +1,199 @@
|
||||
import paho.mqtt.client as paho
|
||||
from cryptography.hazmat.primitives.kdf.pbkdf2 import PBKDF2HMAC
|
||||
import paho.mqtt.publish as pahopub
|
||||
#from simplecrypt import encrypt, decrypt
|
||||
from cryptography.fernet import Fernet
|
||||
from cryptography.hazmat.backends import default_backend
|
||||
from cryptography.hazmat.primitives import hashes
|
||||
import base64
|
||||
from ctypes import *
|
||||
import _ctypes
|
||||
from textwrap import wrap
|
||||
import time
|
||||
import csv
|
||||
from Crypto.PublicKey import RSA
|
||||
from Crypto.Cipher import PKCS1_OAEP as Cipher
|
||||
|
||||
|
||||
# Konfigurasi MQTT server
|
||||
broker = "nnag.xyz"
|
||||
client = paho.Client()
|
||||
port = 1883
|
||||
|
||||
def fernet_keygen():
|
||||
password="urg123"
|
||||
pass_byte=password.encode()
|
||||
salt=b'salt_'
|
||||
kdf = PBKDF2HMAC(
|
||||
algorithm=hashes.SHA256(),
|
||||
length=32,
|
||||
salt=salt,
|
||||
iterations=100,
|
||||
backend=default_backend()
|
||||
)
|
||||
key = base64.urlsafe_b64encode(kdf.derive(pass_byte))
|
||||
return key
|
||||
|
||||
def fernet_encrypt(plain):
|
||||
time_s = time.perf_counter()
|
||||
fernet_key = fernet_keygen()
|
||||
send_data = Fernet(fernet_key).encrypt(plain.encode())
|
||||
time_e = time.perf_counter()
|
||||
end = time_e - time_s
|
||||
|
||||
print("Fernet Plain Length : ",len(plain))
|
||||
print("Fernet Key Length : ",len(fernet_key))
|
||||
print("Fernet Encryption Time : ",end)
|
||||
print(" ")
|
||||
return end, send_data
|
||||
|
||||
def u_encrypt(arg):
|
||||
so_file = 'EES401/URG_encrypt.so'
|
||||
u_enc = CDLL(so_file)
|
||||
u_enc.main.restype = c_double
|
||||
u_enc.main.argtype = c_char_p
|
||||
str_temp = "07"
|
||||
c_return = u_enc.main(arg.encode('utf-8'), str_temp.encode('utf-8'))
|
||||
print("Python Log, C Return : ", c_return)
|
||||
# time.sleep(0.01)
|
||||
_ctypes.dlclose(u_enc._handle)
|
||||
|
||||
return c_return
|
||||
|
||||
|
||||
def rsa_encrypt(plain):
|
||||
|
||||
rsa3072 = open("RSA7680_pub.pem", "r").read()
|
||||
start=time.perf_counter()
|
||||
rsa_pub = RSA.importKey(rsa3072)
|
||||
rsa_pub = Cipher.new(rsa_pub)
|
||||
RSA_enc = rsa_pub.encrypt(plain.encode('utf8'))
|
||||
# RSA_enc = rsa_pub.encrypt(plain)
|
||||
#RSA_enc = rsa_pub.encrypt(plain.encode('utf8'), 32)
|
||||
end=time.perf_counter()-start
|
||||
cipher = RSA_enc
|
||||
# cipher = str(cipher).encode('utf-8')
|
||||
# rsa_file_handler(base_name_RSA3, i, cipher)
|
||||
print("RSA Encryption Time : ", end)
|
||||
print("Cipher ", cipher)
|
||||
print("Length ", len(cipher))
|
||||
print(" ")
|
||||
|
||||
return end, cipher
|
||||
|
||||
|
||||
def file_handler(f_name, num):
|
||||
# num = str(num).zfill(2)
|
||||
# f = open("./cipher/"+f_name+"_"+num+".dat", "rb")
|
||||
f = open("/tmp/cipher_07.dat", "rb")
|
||||
ret = f.read()
|
||||
f.close()
|
||||
return ret
|
||||
|
||||
# def rsa_file_handler(f_name, num, cipher):
|
||||
# num = str(num).zfill(2)
|
||||
# f = open("./cipher/"+f_name+"_"+num+".dat", "wb")
|
||||
# f.write(cipher)
|
||||
|
||||
#Proses enkripsi
|
||||
def payload_process(plain):
|
||||
dec_time = u_encrypt(plain)
|
||||
# cipher = u_encrypt(plain)
|
||||
# time.sleep(0.05)
|
||||
cipher = file_handler("cipher_EES401", 7)
|
||||
# print("Cipher Length : ", len(plain))
|
||||
send_data = base64.b64encode(cipher)
|
||||
return send_data, dec_time
|
||||
|
||||
def payload_fernet(plain):
|
||||
dec_time, cipher = fernet_encrypt(plain)
|
||||
send_data = base64.b64encode(cipher)
|
||||
return send_data, dec_time
|
||||
|
||||
def payload_RSA(plain):
|
||||
dec_time, cipher = rsa_encrypt(plain)
|
||||
# cipher = u_encrypt(plain)
|
||||
# time.sleep(0.05)
|
||||
# cipher = rsa_file_handler("cipher_EES401", 7)
|
||||
# print("Cipher Length : ", len(plain))
|
||||
send_data = base64.b64encode(cipher)
|
||||
return send_data, dec_time
|
||||
|
||||
def plain_handler(f_name, num):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./plain/"+f_name+"_"+num+".txt", "r")
|
||||
return f.read()
|
||||
|
||||
|
||||
# Add this to test the Blacklist feature
|
||||
# blacklist_trigger = base64.b64encode(b"I'm gonna make this program crash!"*10)
|
||||
# cipher_arr.append(blacklist_trigger)
|
||||
# msg_data = blacklist_trigger
|
||||
|
||||
# ======================== || START FROM HERE BUDDY || ==================
|
||||
def main(msg):
|
||||
# plain = input("Enter The Message : ")
|
||||
plain = msg
|
||||
plain_ori = plain
|
||||
# plain = plain_handler("plain", i)
|
||||
i = 0
|
||||
my_ip = "device01"
|
||||
identifier = "&"
|
||||
f_name = "cipher_EES401"
|
||||
plain_arr = []
|
||||
cipher_arr = []
|
||||
# plain = input("Enter plain : ")
|
||||
# plain = "This message is longer than 4 char"
|
||||
# x = 16 - (len(plain)%16)
|
||||
# plain = plain+(" "*x)
|
||||
# plain_arr = wrap(plain, 16, replace_whitespace=False, drop_whitespace=False)
|
||||
# print("Join List Test ", ''.join(plain_arr))
|
||||
# client.tls_set()
|
||||
# client.username_pw_set(username="aaa", password="pass")
|
||||
status = client.connect(broker,port)
|
||||
print("Connection status, ", status)
|
||||
# input()
|
||||
# plain_now = plain_arr[1]
|
||||
time_tmp = []
|
||||
|
||||
# ******************************8
|
||||
# for i in range(len(plain_arr)):
|
||||
# # print(" ")
|
||||
# # print("===== [ Sequence "+str(i)+" ] "+"======================================================")
|
||||
# # data_now, dec_time = payload_process(plain_arr[i])
|
||||
# # data_now, dec_time = payload_RSA(plain_arr[i])
|
||||
# data_now, dec_time = payload_fernet(plain_arr[i])
|
||||
# cipher_arr.append(data_now)
|
||||
# time_tmp.append(dec_time)
|
||||
|
||||
# dec_acc = sum(map(float, time_tmp))
|
||||
# xxx = (base64.b64decode(cipher_arr[0]))
|
||||
# print("cipher len : ",len(xxx))
|
||||
# print("base64 cipher len : ",len(data_now))
|
||||
|
||||
# msg_data = b''.join(cipher_arr)
|
||||
# ******************************8
|
||||
|
||||
# send_data = my_ip+identifier+msg_data.decode('ascii')
|
||||
msg_data, dec_time = payload_fernet(plain)
|
||||
send_data = msg_data.decode('ascii')
|
||||
# print("Python LOG Plain : ", plain)
|
||||
# print(" ")
|
||||
# print("===== Result ======================================================")
|
||||
# print("Python LOG Plain Length : ", len(plain_ori))
|
||||
# print("Python LOG Plain with Padding Length : ", len(plain))
|
||||
# print("Sending Cipher with length : ", len(send_data))
|
||||
# print("Python LOG Plain Array : ", plain_arr)
|
||||
# print("Python LOG Cipher Length : ", len(send_data))
|
||||
# client.publish("device01/msg", "XXXXX")
|
||||
client.loop_start()
|
||||
print("Total sent data ", len(send_data));
|
||||
# client.connect("nnag.xyz", 1883)
|
||||
# pahopub.single("device01/msg", "xxxx")
|
||||
client.publish("device01/msg", msg_data)
|
||||
# input()
|
||||
|
||||
return dec_time
|
||||
|
||||
# test_str = "Test String"
|
||||
# client.publish("device01/msg", base64.b64encode(test_str.encode("utf-8")) )
|
161
infidel-code/py_wrappers/Publish_rciot_NTRU.py
Normal file
161
infidel-code/py_wrappers/Publish_rciot_NTRU.py
Normal file
@ -0,0 +1,161 @@
|
||||
import paho.mqtt.client as paho
|
||||
import paho.mqtt.publish as pahopub
|
||||
#from simplecrypt import encrypt, decrypt
|
||||
import base64
|
||||
from ctypes import *
|
||||
import _ctypes
|
||||
from textwrap import wrap
|
||||
import time
|
||||
import csv
|
||||
from Crypto.PublicKey import RSA
|
||||
from Crypto.Cipher import PKCS1_OAEP as Cipher
|
||||
from SABER_KEM.test.so_handler import main as sec_pub
|
||||
|
||||
|
||||
# Konfigurasi MQTT server
|
||||
broker = "192.168.1.17"
|
||||
client = paho.Client()
|
||||
port = 1883
|
||||
def u_encrypt(arg):
|
||||
sce_pub(arg)
|
||||
|
||||
def u_encrypt(arg):
|
||||
so_file = 'EES401/URG_encrypt.so'
|
||||
u_enc = CDLL(so_file)
|
||||
u_enc.main.restype = c_double
|
||||
u_enc.main.argtype = c_char_p
|
||||
str_temp = "07"
|
||||
c_return = u_enc.main(arg.encode('utf-8'), str_temp.encode('utf-8'))
|
||||
print("Python Log, C Return : ", c_return)
|
||||
# time.sleep(0.01)
|
||||
_ctypes.dlclose(u_enc._handle)
|
||||
|
||||
return c_return
|
||||
|
||||
|
||||
def rsa_encrypt(plain):
|
||||
|
||||
rsa3072 = open("RSA7680_pub.pem", "r").read()
|
||||
start=time.perf_counter()
|
||||
rsa_pub = RSA.importKey(rsa3072)
|
||||
rsa_pub = Cipher.new(rsa_pub)
|
||||
RSA_enc = rsa_pub.encrypt(plain.encode('utf8'))
|
||||
# RSA_enc = rsa_pub.encrypt(plain)
|
||||
#RSA_enc = rsa_pub.encrypt(plain.encode('utf8'), 32)
|
||||
end=time.perf_counter()-start
|
||||
cipher = RSA_enc
|
||||
# cipher = str(cipher).encode('utf-8')
|
||||
# rsa_file_handler(base_name_RSA3, i, cipher)
|
||||
print("RSA Encryption Time : ", end)
|
||||
print("Cipher ", cipher)
|
||||
print("Length ", len(cipher))
|
||||
print(" ")
|
||||
|
||||
return end, cipher
|
||||
|
||||
|
||||
def file_handler(f_name, num):
|
||||
# num = str(num).zfill(2)
|
||||
# f = open("./cipher/"+f_name+"_"+num+".dat", "rb")
|
||||
f = open("/tmp/cipher_07.dat", "rb")
|
||||
ret = f.read()
|
||||
f.close()
|
||||
return ret
|
||||
|
||||
# def rsa_file_handler(f_name, num, cipher):
|
||||
# num = str(num).zfill(2)
|
||||
# f = open("./cipher/"+f_name+"_"+num+".dat", "wb")
|
||||
# f.write(cipher)
|
||||
|
||||
#Proses enkripsi
|
||||
def payload_process(plain):
|
||||
dec_time = u_encrypt(plain)
|
||||
# cipher = u_encrypt(plain)
|
||||
# time.sleep(0.05)
|
||||
cipher = file_handler("cipher_EES401", 7)
|
||||
# print("Cipher Length : ", len(plain))
|
||||
send_data = base64.b64encode(cipher)
|
||||
return send_data, dec_time
|
||||
|
||||
def payload_RSA(plain):
|
||||
dec_time, cipher = rsa_encrypt(plain)
|
||||
# cipher = u_encrypt(plain)
|
||||
# time.sleep(0.05)
|
||||
# cipher = rsa_file_handler("cipher_EES401", 7)
|
||||
# print("Cipher Length : ", len(plain))
|
||||
send_data = base64.b64encode(cipher)
|
||||
return send_data, dec_time
|
||||
|
||||
def plain_handler(f_name, num):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./plain/"+f_name+"_"+num+".txt", "r")
|
||||
return f.read()
|
||||
|
||||
|
||||
# Add this to test the Blacklist feature
|
||||
# blacklist_trigger = base64.b64encode(b"I'm gonna make this program crash!"*10)
|
||||
# cipher_arr.append(blacklist_trigger)
|
||||
# msg_data = blacklist_trigger
|
||||
|
||||
# ======================== || START FROM HERE BUDDY || ==================
|
||||
def main(msg):
|
||||
# plain = input("Enter The Message : ")
|
||||
plain = msg
|
||||
plain_ori = plain
|
||||
# plain = plain_handler("plain", i)
|
||||
i = 0
|
||||
my_ip = "device01"
|
||||
identifier = "&"
|
||||
f_name = "cipher_EES401"
|
||||
plain_arr = []
|
||||
cipher_arr = []
|
||||
# plain = input("Enter plain : ")
|
||||
# plain = "This message is longer than 4 char"
|
||||
x = 16 - (len(plain)%16)
|
||||
plain = plain+(" "*x)
|
||||
plain_arr = wrap(plain, 16, replace_whitespace=False, drop_whitespace=False)
|
||||
# print("Join List Test ", ''.join(plain_arr))
|
||||
# client.tls_set()
|
||||
# client.username_pw_set(username="aaa", password="pass")
|
||||
status = client.connect(broker,port)
|
||||
print("Connection status, ", status)
|
||||
# input()
|
||||
# plain_now = plain_arr[1]
|
||||
time_tmp = []
|
||||
for i in range(len(plain_arr)):
|
||||
# print(" ")
|
||||
# print("===== [ Sequence "+str(i)+" ] "+"======================================================")
|
||||
data_now, dec_time = payload_process(plain_arr[i])
|
||||
# data_now, dec_time = payload_RSA(plain_arr[i])
|
||||
cipher_arr.append(data_now)
|
||||
time_tmp.append(dec_time)
|
||||
|
||||
dec_acc = sum(map(float, time_tmp))
|
||||
xxx = (base64.b64decode(cipher_arr[0]))
|
||||
print(len(xxx))
|
||||
print(len(data_now))
|
||||
msg_data = b''.join(cipher_arr)
|
||||
# send_data = my_ip+identifier+msg_data.decode('ascii')
|
||||
send_data = msg_data.decode('ascii')
|
||||
# print("Python LOG Plain : ", plain)
|
||||
# print(" ")
|
||||
# print("===== Result ======================================================")
|
||||
# print("Python LOG Plain Length : ", len(plain_ori))
|
||||
# print("Python LOG Plain with Padding Length : ", len(plain))
|
||||
# print("Sending Cipher with length : ", len(send_data))
|
||||
# print("Python LOG Plain Array : ", plain_arr)
|
||||
# print("Python LOG Cipher Length : ", len(send_data))
|
||||
# client.publish("device01/msg", "XXXXX")
|
||||
client.loop_start()
|
||||
print(len(send_data));
|
||||
# client.connect("nnag.xyz", 1883)
|
||||
# pahopub.single("device01/msg", "xxxx")
|
||||
# client.publish("device01/msg", msg)
|
||||
client.publish("device01/msg", msg_data)
|
||||
|
||||
return dec_acc
|
||||
|
||||
|
||||
# #main("AAA")
|
||||
# test_str = "Test String"
|
||||
# client.publish("device01/msg", base64.b64encode(test_str.encode("utf-8")) )
|
155
infidel-code/py_wrappers/Publish_rciot_RSA.py
Normal file
155
infidel-code/py_wrappers/Publish_rciot_RSA.py
Normal file
@ -0,0 +1,155 @@
|
||||
import paho.mqtt.client as paho
|
||||
import paho.mqtt.publish as pahopub
|
||||
#from simplecrypt import encrypt, decrypt
|
||||
import base64
|
||||
from ctypes import *
|
||||
import _ctypes
|
||||
from textwrap import wrap
|
||||
import time
|
||||
import csv
|
||||
from Crypto.PublicKey import RSA
|
||||
from Crypto.Cipher import PKCS1_OAEP as Cipher
|
||||
|
||||
|
||||
# Konfigurasi MQTT server
|
||||
broker = "nnag.xyz"
|
||||
client = paho.Client()
|
||||
port = 1883
|
||||
|
||||
def u_encrypt(arg):
|
||||
so_file = 'EES401/URG_encrypt.so'
|
||||
u_enc = CDLL(so_file)
|
||||
u_enc.main.restype = c_double
|
||||
u_enc.main.argtype = c_char_p
|
||||
str_temp = "07"
|
||||
c_return = u_enc.main(arg.encode('utf-8'), str_temp.encode('utf-8'))
|
||||
print("Python Log, C Return : ", c_return)
|
||||
# time.sleep(0.01)
|
||||
_ctypes.dlclose(u_enc._handle)
|
||||
|
||||
return c_return
|
||||
|
||||
|
||||
def rsa_encrypt(plain):
|
||||
|
||||
rsa3072 = open("RSA7680_pub.pem", "r").read()
|
||||
start=time.perf_counter()
|
||||
rsa_pub = RSA.importKey(rsa3072)
|
||||
rsa_pub = Cipher.new(rsa_pub)
|
||||
RSA_enc = rsa_pub.encrypt(plain.encode('utf8'))
|
||||
# RSA_enc = rsa_pub.encrypt(plain)
|
||||
#RSA_enc = rsa_pub.encrypt(plain.encode('utf8'), 32)
|
||||
end=time.perf_counter()-start
|
||||
cipher = RSA_enc
|
||||
# cipher = str(cipher).encode('utf-8')
|
||||
# rsa_file_handler(base_name_RSA3, i, cipher)
|
||||
print("RSA Encryption Time : ", end)
|
||||
print("Cipher ", cipher)
|
||||
print("Length ", len(cipher))
|
||||
print(" ")
|
||||
|
||||
return end, cipher
|
||||
|
||||
|
||||
def file_handler(f_name, num):
|
||||
# num = str(num).zfill(2)
|
||||
# f = open("./cipher/"+f_name+"_"+num+".dat", "rb")
|
||||
f = open("/tmp/cipher_07.dat", "rb")
|
||||
ret = f.read()
|
||||
f.close()
|
||||
return ret
|
||||
|
||||
# def rsa_file_handler(f_name, num, cipher):
|
||||
# num = str(num).zfill(2)
|
||||
# f = open("./cipher/"+f_name+"_"+num+".dat", "wb")
|
||||
# f.write(cipher)
|
||||
|
||||
#Proses enkripsi
|
||||
def payload_process(plain):
|
||||
dec_time = u_encrypt(plain)
|
||||
# cipher = u_encrypt(plain)
|
||||
# time.sleep(0.05)
|
||||
cipher = file_handler("cipher_EES401", 7)
|
||||
# print("Cipher Length : ", len(plain))
|
||||
send_data = base64.b64encode(cipher)
|
||||
return send_data, dec_time
|
||||
|
||||
def payload_RSA(plain):
|
||||
dec_time, cipher = rsa_encrypt(plain)
|
||||
# cipher = u_encrypt(plain)
|
||||
# time.sleep(0.05)
|
||||
# cipher = rsa_file_handler("cipher_EES401", 7)
|
||||
# print("Cipher Length : ", len(plain))
|
||||
send_data = base64.b64encode(cipher)
|
||||
return send_data, dec_time
|
||||
|
||||
def plain_handler(f_name, num):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./plain/"+f_name+"_"+num+".txt", "r")
|
||||
return f.read()
|
||||
|
||||
|
||||
# Add this to test the Blacklist feature
|
||||
# blacklist_trigger = base64.b64encode(b"I'm gonna make this program crash!"*10)
|
||||
# cipher_arr.append(blacklist_trigger)
|
||||
# msg_data = blacklist_trigger
|
||||
|
||||
# ======================== || START FROM HERE BUDDY || ==================
|
||||
def main(msg):
|
||||
# plain = input("Enter The Message : ")
|
||||
plain = msg
|
||||
plain_ori = plain
|
||||
# plain = plain_handler("plain", i)
|
||||
i = 0
|
||||
my_ip = "device01"
|
||||
identifier = "&"
|
||||
f_name = "cipher_EES401"
|
||||
plain_arr = []
|
||||
cipher_arr = []
|
||||
# plain = input("Enter plain : ")
|
||||
# plain = "This message is longer than 4 char"
|
||||
x = 16 - (len(plain)%16)
|
||||
plain = plain+(" "*x)
|
||||
plain_arr = wrap(plain, 16, replace_whitespace=False, drop_whitespace=False)
|
||||
# print("Join List Test ", ''.join(plain_arr))
|
||||
# client.tls_set()
|
||||
# client.username_pw_set(username="aaa", password="pass")
|
||||
status = client.connect(broker,port)
|
||||
print("Connection status, ", status)
|
||||
# input()
|
||||
# plain_now = plain_arr[1]
|
||||
time_tmp = []
|
||||
for i in range(len(plain_arr)):
|
||||
# print(" ")
|
||||
# print("===== [ Sequence "+str(i)+" ] "+"======================================================")
|
||||
# data_now, dec_time = payload_process(plain_arr[i])
|
||||
data_now, dec_time = payload_RSA(plain_arr[i])
|
||||
cipher_arr.append(data_now)
|
||||
time_tmp.append(dec_time)
|
||||
|
||||
dec_acc = sum(map(float, time_tmp))
|
||||
xxx = (base64.b64decode(cipher_arr[0]))
|
||||
print(len(xxx))
|
||||
print(len(data_now))
|
||||
msg_data = b''.join(cipher_arr)
|
||||
# send_data = my_ip+identifier+msg_data.decode('ascii')
|
||||
send_data = msg_data.decode('ascii')
|
||||
# print("Python LOG Plain : ", plain)
|
||||
# print(" ")
|
||||
# print("===== Result ======================================================")
|
||||
# print("Python LOG Plain Length : ", len(plain_ori))
|
||||
# print("Python LOG Plain with Padding Length : ", len(plain))
|
||||
# print("Sending Cipher with length : ", len(send_data))
|
||||
# print("Python LOG Plain Array : ", plain_arr)
|
||||
# print("Python LOG Cipher Length : ", len(send_data))
|
||||
# client.publish("device01/msg", "XXXXX")
|
||||
client.loop_start()
|
||||
print(len(send_data));
|
||||
# client.connect("nnag.xyz", 1883)
|
||||
# pahopub.single("device01/msg", "xxxx")
|
||||
client.publish("device01/msg", msg_data)
|
||||
|
||||
return dec_acc
|
||||
|
||||
# test_str = "Test String"
|
||||
# client.publish("device01/msg", base64.b64encode(test_str.encode("utf-8")) )
|
448
infidel-code/py_wrappers/Publisher.glade
Executable file
448
infidel-code/py_wrappers/Publisher.glade
Executable file
@ -0,0 +1,448 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Generated with glade 3.22.2 -->
|
||||
<interface>
|
||||
<requires lib="gtk+" version="3.20"/>
|
||||
<object class="GtkFileFilter" id="filefilter1"/>
|
||||
<object class="GtkWindow" id="windowMain">
|
||||
<property name="can_focus">False</property>
|
||||
<property name="vexpand">True</property>
|
||||
<property name="default_width">400</property>
|
||||
<property name="default_height">400</property>
|
||||
<property name="icon_name">dialog-password</property>
|
||||
<child type="titlebar">
|
||||
<object class="GtkHeaderBar">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="title" translatable="yes">NTRU ENCRYPT</property>
|
||||
<child>
|
||||
<object class="GtkButton" id="close_window">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="relief">none</property>
|
||||
<property name="always_show_image">True</property>
|
||||
<signal name="clicked" handler="on_close_window_clicked" swapped="no"/>
|
||||
<child>
|
||||
<object class="GtkImage">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="icon_name">dialog-close</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="pack_type">end</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="margin_left">10</property>
|
||||
<property name="margin_right">10</property>
|
||||
<property name="margin_top">10</property>
|
||||
<property name="margin_bottom">10</property>
|
||||
<property name="orientation">vertical</property>
|
||||
<property name="spacing">5</property>
|
||||
<property name="baseline_position">bottom</property>
|
||||
<child>
|
||||
<object class="GtkGrid">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="margin_left">5</property>
|
||||
<property name="margin_right">5</property>
|
||||
<property name="margin_top">5</property>
|
||||
<property name="margin_bottom">5</property>
|
||||
<property name="column_spacing">20</property>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">Key File </property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkFileChooserButton" id="openfile">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="filter">filefilter1</property>
|
||||
<property name="title" translatable="yes"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkFrame">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="margin_left">5</property>
|
||||
<property name="margin_right">5</property>
|
||||
<property name="margin_top">5</property>
|
||||
<property name="margin_bottom">5</property>
|
||||
<property name="label_xalign">0</property>
|
||||
<property name="shadow_type">etched-out</property>
|
||||
<child>
|
||||
<object class="GtkAlignment">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="left_padding">12</property>
|
||||
<child>
|
||||
<object class="GtkGrid">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<child>
|
||||
<object class="GtkCheckButton" id="enc_401">
|
||||
<property name="label" translatable="yes">NTRU EES 401</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="focus_on_click">False</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<signal name="toggled" handler="enc_m01" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkCheckButton" id="enc_593">
|
||||
<property name="label" translatable="yes">NTRU EES 593</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="focus_on_click">False</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<signal name="toggled" handler="enc_m02" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child type="label">
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">Encryption Method</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkFrame">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label_xalign">0</property>
|
||||
<property name="shadow_type">none</property>
|
||||
<child>
|
||||
<object class="GtkAlignment">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="left_padding">12</property>
|
||||
<child>
|
||||
<object class="GtkEntry" id="message">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child type="label">
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">Enter Message : </property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkFrame">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="vexpand">True</property>
|
||||
<property name="label_xalign">0</property>
|
||||
<property name="shadow_type">etched-out</property>
|
||||
<child>
|
||||
<object class="GtkAlignment">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="left_padding">12</property>
|
||||
<child>
|
||||
<object class="GtkScrolledWindow">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="shadow_type">in</property>
|
||||
<child>
|
||||
<object class="GtkTextView" id="result_text">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="editable">False</property>
|
||||
<property name="wrap_mode">word-char</property>
|
||||
<property name="indent">3</property>
|
||||
<property name="cursor_visible">False</property>
|
||||
<property name="accepts_tab">False</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child type="label">
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">Encrypted Message Content : </property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">True</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">3</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkFrame">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label_xalign">0</property>
|
||||
<child>
|
||||
<object class="GtkAlignment">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="left_padding">12</property>
|
||||
<child>
|
||||
<object class="GtkGrid">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="margin_top">5</property>
|
||||
<property name="margin_bottom">5</property>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">Message Length</property>
|
||||
<property name="justify">fill</property>
|
||||
<property name="xalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="msg_arr">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="hexpand">True</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="msg_len">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="hexpand">True</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">Message Array</property>
|
||||
<property name="xalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child type="label">
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="vexpand">True</property>
|
||||
<property name="label" translatable="yes">Message Details</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">False</property>
|
||||
<property name="position">6</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="msg">
|
||||
<property name="label" translatable="yes">Encrypt</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="halign">center</property>
|
||||
<property name="margin_left">5</property>
|
||||
<property name="margin_right">5</property>
|
||||
<property name="margin_bottom">5</property>
|
||||
<signal name="clicked" handler="on_msg_clicked" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="pack_type">end</property>
|
||||
<property name="position">7</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkFrame">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label_xalign">0</property>
|
||||
<property name="shadow_type">etched-out</property>
|
||||
<child>
|
||||
<object class="GtkAlignment">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="left_padding">12</property>
|
||||
<child>
|
||||
<object class="GtkGrid">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="margin_left">5</property>
|
||||
<property name="margin_right">5</property>
|
||||
<property name="margin_top">5</property>
|
||||
<property name="margin_bottom">5</property>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">Cipher Size</property>
|
||||
<property name="justify">fill</property>
|
||||
<property name="xalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="enc_time">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="hexpand">True</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="enc_size">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="hexpand">True</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">Encryption Sequence</property>
|
||||
<property name="xalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="enc_seq">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">Encryption Time </property>
|
||||
<property name="xalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child type="label">
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">Encryption Details</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">True</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">8</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<object class="GtkFileFilter" id="filefilter2"/>
|
||||
<object class="GtkTextBuffer" id="textbuffer1"/>
|
||||
</interface>
|
158
infidel-code/py_wrappers/Publisher_GUI.py
Executable file
158
infidel-code/py_wrappers/Publisher_GUI.py
Executable file
@ -0,0 +1,158 @@
|
||||
#!/usr/bin/env python3
|
||||
import gi
|
||||
gi.require_version('Gtk','3.0')
|
||||
from gi.repository import Gtk, Gdk, GLib, GdkPixbuf
|
||||
import paho.mqtt.client as paho
|
||||
#from simplecrypt import encrypt, decrypt
|
||||
import base64
|
||||
from ctypes import *
|
||||
import _ctypes
|
||||
from textwrap import wrap
|
||||
|
||||
broker = "192.168.2.16"
|
||||
client = paho.Client()
|
||||
port = 1883
|
||||
|
||||
|
||||
# print("")
|
||||
|
||||
builder = Gtk.Builder()
|
||||
builder.add_from_file("py_wrappers/Publisher.glade")
|
||||
# File filter
|
||||
|
||||
|
||||
window = builder.get_object("windowMain")
|
||||
msg = builder.get_object("message")
|
||||
key_file = builder.get_object("openfile")
|
||||
res_text = builder.get_object("result_text")
|
||||
enc_time = builder.get_object("enc_time")
|
||||
enc_size = builder.get_object("enc_size")
|
||||
enc_seq = builder.get_object("enc_seq")
|
||||
msg_len = builder.get_object("msg_len")
|
||||
msg_arr = builder.get_object("msg_arr")
|
||||
enc_401 = builder.get_object("enc_401")
|
||||
enc_593 = builder.get_object("enc_593")
|
||||
|
||||
|
||||
filterfilter1 = Gtk.FileFilter()
|
||||
filterfilter1.set_name("Keys")
|
||||
filterfilter1.add_pattern("*.pub")
|
||||
key_file.add_filter(filterfilter1)
|
||||
window.show_all()
|
||||
|
||||
class mainWindowHandler:
|
||||
|
||||
def u_encrypt(self, arg, enc_method):
|
||||
so_file = enc_method
|
||||
u_enc = CDLL(so_file)
|
||||
u_enc.main.restype = c_double
|
||||
tmp_num = "001"
|
||||
c_return = u_enc.main(arg.encode('utf-8'), tmp_num.encode("utf-8"))
|
||||
#print("Python Log : C Return ", c_return)
|
||||
_ctypes.dlclose(u_enc._handle)
|
||||
return c_return
|
||||
|
||||
def file_handler(self, f_name, num):
|
||||
num = str(num).zfill(3)
|
||||
f = open(".cipher/"+f_name+"_"+num+".dat", "rb")
|
||||
return f.read()
|
||||
|
||||
def payload_process(self, plain):
|
||||
enc_glob = enc_box
|
||||
cip_glob = cip_box
|
||||
print(enc_glob)
|
||||
#time_enc = self.u_encrypt(plain, key_file.get_filename())
|
||||
time_enc = self.u_encrypt(plain, enc_glob)
|
||||
#plain = self.file_handler("cipher_EES401", 7)
|
||||
plain = self.file_handler(cip_glob, 7)
|
||||
bff_text = Gtk.TextBuffer()
|
||||
bff_text.set_text(str(plain, errors="replace"))
|
||||
res_text.set_buffer(bff_text)
|
||||
enc_size.set_text(str(len(plain)))
|
||||
send_data = base64.b64encode(plain)
|
||||
return send_data, time_enc
|
||||
|
||||
def on_windowMain_destroy(self, *args):
|
||||
Gtk.main_quit()
|
||||
|
||||
def on_close_window_clicked(self, button):
|
||||
Gtk.main_quit()
|
||||
|
||||
|
||||
def enc_m01(self, button):
|
||||
print("Checkbox 1 Called")
|
||||
if enc_401.get_active():
|
||||
enc_593.set_sensitive(False)
|
||||
else:
|
||||
enc_593.set_sensitive(True)
|
||||
#enc_593.set_active(True)
|
||||
print("Release m02")
|
||||
global enc_box
|
||||
global cip_box
|
||||
global max_block
|
||||
# enc_box = "/home/nino/Documents/Papers/MQTT_2.0/Crypto/NTRUEncrypt_Benchmark/EES401/URG_encrypt.so"
|
||||
enc_box = "./bin/enc_401.so"
|
||||
cip_box = "ees401/cipher"
|
||||
max_block = 60
|
||||
|
||||
def enc_m02(self, button):
|
||||
print("Checkbox 2 Called")
|
||||
if enc_593.get_active():
|
||||
enc_401.set_sensitive(False)
|
||||
else:
|
||||
enc_401.set_sensitive(True)
|
||||
print("Release m01")
|
||||
global enc_box
|
||||
global cip_box
|
||||
global max_block
|
||||
# enc_box = "/home/nino/Documents/Papers/MQTT_2.0/Crypto/NTRUEncrypt_Benchmark/EES593/URG_encrypt.so"
|
||||
enc_box = "./bin/enc_593.so"
|
||||
cip_box = "ees593/cipher"
|
||||
max_block = 86
|
||||
|
||||
def on_msg_clicked(self, button):
|
||||
bff_text = Gtk.TextBuffer()
|
||||
bff_text.set_text("Loading . . . ")
|
||||
res_text.set_buffer(bff_text)
|
||||
i = 0
|
||||
my_ip = "device01"
|
||||
identifier = "&"
|
||||
f_name = "cipher"
|
||||
time_arr = []
|
||||
plain_arr = []
|
||||
cipher_arr = []
|
||||
plain = str(msg.get_text())
|
||||
# if enc_box == None:
|
||||
# bff_text.set_text("Please Enter Message First !")
|
||||
# res_text.set_buffer(bff_text)
|
||||
plain_original = plain
|
||||
print(plain)
|
||||
print(max_block)
|
||||
x = max_block - (len(plain)%max_block)
|
||||
plain = plain+(" "*x)
|
||||
plain_arr = wrap(plain, max_block, replace_whitespace=False, drop_whitespace=False)
|
||||
print(plain_arr)
|
||||
print("Join List Test ", ''.join(plain_arr))
|
||||
client.connect(broker,port)
|
||||
for i in range(len(plain_arr)):
|
||||
data_now, time_enc = self.payload_process(plain_arr[i])
|
||||
cipher_arr.append(data_now)
|
||||
time_arr.append(time_enc)
|
||||
|
||||
enc_time.set_text(str(sum(time_arr)))
|
||||
enc_seq.set_text(str(i))
|
||||
msg_arr.set_text(str(plain_arr))
|
||||
msg_len.set_text(str(len(plain_original)))
|
||||
|
||||
print(time_arr)
|
||||
print(msg.get_text())
|
||||
|
||||
cipher_arr = b''.join(cipher_arr)
|
||||
cipher_arr = cipher_arr.decode('ascii')
|
||||
client.loop_start()
|
||||
client.publish("device01/msg", cipher_arr)
|
||||
client.loop_stop()
|
||||
# print("Your File ",key_file.get_filename())
|
||||
|
||||
builder.connect_signals(mainWindowHandler())
|
||||
Gtk.main()
|
117
infidel-code/py_wrappers/Sub_rciot.py
Normal file
117
infidel-code/py_wrappers/Sub_rciot.py
Normal file
@ -0,0 +1,117 @@
|
||||
import paho.mqtt.client as paho
|
||||
# from simplecrypt import encrypt, decrypt
|
||||
from cryptography.fernet import Fernet
|
||||
# from memory_profiler import profile
|
||||
import base64
|
||||
import _ctypes
|
||||
from ctypes import *
|
||||
from textwrap import wrap
|
||||
import csv
|
||||
import time
|
||||
|
||||
|
||||
# Konfigurasi MQTT server
|
||||
broker = "tiplab.duckdns.org"
|
||||
client = paho.Client()
|
||||
port = 1883
|
||||
|
||||
def u_decrypt(arg):
|
||||
# print("Cipher Length : ", len(arg))
|
||||
so_file2 = './EES401/URG_decrypt.so'
|
||||
u_dec = CDLL(so_file2)
|
||||
u_dec.main.restype = c_char_p
|
||||
u_dec.main.argtype = c_char_p
|
||||
c_return = u_dec.main(arg)
|
||||
_ctypes.dlclose(u_dec._handle)
|
||||
# print("Python Log, C RETURN TYPE : ", type(c_return))
|
||||
return c_return.decode('ascii')
|
||||
|
||||
def file_handler(f_name, num):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./cipher/"+f_name+"_"+num+".dat", "rb")
|
||||
f_val = f.read()
|
||||
f.close()
|
||||
return f_val
|
||||
|
||||
def write_handler(f_name, num, arg):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./cipher/"+f_name+"_"+num+".dat", "wb")
|
||||
f.write(arg)
|
||||
f.close()
|
||||
|
||||
def rsa_file_handler(f_name, num):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./cipher/"+f_name+"_"+num+".dat", "rb")
|
||||
f_val = f.read()
|
||||
return f.val
|
||||
|
||||
def on_connect(client, userdata, flags, rc):
|
||||
print("Connected with result code "+str(rc))
|
||||
client.subscribe("device01/msg")
|
||||
|
||||
#Proses enkripsi
|
||||
def payload_process(msg):
|
||||
msg_dec = base64.b64decode(msg)
|
||||
print("Before decryption : "+str(msg_dec[:100])+"...")
|
||||
dec_time = 0
|
||||
if len(msg) > 736:
|
||||
msg_arr = wrap(msg, 736)
|
||||
dec_msg_arr = []
|
||||
for i in range(len(msg_arr)):
|
||||
time_tmp = []
|
||||
msg = base64.b64decode(msg_arr[i])
|
||||
# print("=====[ Decryption Sequence "+str(i+1)+" ]=================")
|
||||
start = time.perf_counter()
|
||||
dec_msg = u_decrypt(msg)
|
||||
end = time.perf_counter()-start
|
||||
print(end)
|
||||
dec_msg_arr.append(dec_msg)
|
||||
# print("C Return String : ", dec_msg )
|
||||
time_tmp.append(end)
|
||||
dec_time = sum(map(float, time_tmp))
|
||||
final_msg = ''.join(dec_msg_arr)
|
||||
else:
|
||||
msg = base64.b64decode(msg)
|
||||
final_msg = u_decrypt(msg)
|
||||
return final_msg, dec_time
|
||||
|
||||
def on_message(client, userdata, msg):
|
||||
# print("========================================")
|
||||
# print("Topic : ", msg.topic)
|
||||
# print("QOS : ", msg.qos)
|
||||
# print("Payload : ", msg.payload)
|
||||
msg = msg.payload.decode()
|
||||
if len(msg) != 0:
|
||||
# all_data = msg.split('&', 1)
|
||||
# user_ip = all_data[0]
|
||||
# msg = all_data[1]
|
||||
# print("Publisher : ",user_ip)
|
||||
print("====[ Incomming Msg ]=======================")
|
||||
print("Incomming Message Length : ", len(msg))
|
||||
# print("Incomming Message Type : ", type(msg))
|
||||
real_data,dec_time = payload_process(msg)
|
||||
|
||||
with open("dec_report.csv", "a+") as f:
|
||||
writer = csv.writer(f)
|
||||
writer.writerow([len(msg), dec_time, real_data])
|
||||
# real_data = real_data[1]
|
||||
print("Decryption Result (Plaintext) : ", real_data)
|
||||
# print("Result Length : ", len(real_data))
|
||||
print(" ")
|
||||
return real_data
|
||||
|
||||
base_name = "cipher"
|
||||
base_name_RSA3 = "RSA_3072"
|
||||
base_name_RSA7 = "RSA_7680"
|
||||
header = ["Message Length", "Decryption Time", "Message"]
|
||||
|
||||
with open("dec_report.csv", "w") as f:
|
||||
writer = csv.writer(f)
|
||||
writer.writerow(header)
|
||||
|
||||
# client.tls_set()
|
||||
# client.username_pw_set(username="aaa", password="pass")
|
||||
client.connect(broker,port)
|
||||
client.on_connect = on_connect
|
||||
client.on_message = on_message
|
||||
client.loop_forever()
|
95
infidel-code/py_wrappers/Subscribe_Encrypted.py
Normal file
95
infidel-code/py_wrappers/Subscribe_Encrypted.py
Normal file
@ -0,0 +1,95 @@
|
||||
import paho.mqtt.client as paho
|
||||
# from simplecrypt import encrypt, decrypt
|
||||
from cryptography.fernet import Fernet
|
||||
import base64
|
||||
import _ctypes
|
||||
from ctypes import *
|
||||
from textwrap import wrap
|
||||
|
||||
|
||||
# Konfigurasi MQTT server
|
||||
broker = "nnag.xyz"
|
||||
client = paho.Client()
|
||||
port = 1883
|
||||
|
||||
|
||||
def u_decrypt(arg):
|
||||
print("Cipher Length : ", len(arg))
|
||||
so_file2 = './EES593/URG_decrypt.so'
|
||||
u_dec = CDLL(so_file2)
|
||||
u_dec.main.restype = c_char_p
|
||||
u_dec.main.argtype = c_char_p
|
||||
c_return = u_dec.main(arg)
|
||||
_ctypes.dlclose(u_dec._handle)
|
||||
# print("Python Log, C RETURN TYPE : ", type(c_return))
|
||||
return c_return.decode('ascii')
|
||||
|
||||
def file_handler(f_name, num):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./cipher/"+f_name+"_"+num+".dat", "rb")
|
||||
f_val = f.read()
|
||||
f.close()
|
||||
return f_val
|
||||
|
||||
def write_handler(f_name, num, arg):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./cipher/"+f_name+"_"+num+".dat", "wb")
|
||||
f.write(arg)
|
||||
f.close()
|
||||
|
||||
def rsa_file_handler(f_name, num):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./cipher/"+f_name+"_"+num+".dat", "rb")
|
||||
f_val = f.read()
|
||||
return f.val
|
||||
|
||||
def on_connect(client, userdata, flags, rc):
|
||||
print("Connected with result code "+str(rc))
|
||||
client.subscribe("device01/msg")
|
||||
|
||||
#Proses enkripsi
|
||||
def payload_process(msg):
|
||||
if len(msg) > 736:
|
||||
msg_arr = wrap(msg, 736)
|
||||
dec_msg_arr = []
|
||||
for i in range(len(msg_arr)):
|
||||
msg = base64.b64decode(msg_arr[i])
|
||||
# print("=====[ Decryption Sequence "+str(i+1)+" ]=================")
|
||||
dec_msg = u_decrypt(msg)
|
||||
dec_msg_arr.append(dec_msg)
|
||||
# print("C Return String : ", dec_msg )
|
||||
final_msg = ''.join(dec_msg_arr)
|
||||
else:
|
||||
msg = base64.b64decode(msg)
|
||||
final_msg = u_decrypt(msg)
|
||||
return final_msg
|
||||
|
||||
def on_message(client, userdata, msg):
|
||||
# print("========================================")
|
||||
# print("Topic : ", msg.topic)
|
||||
# print("QOS : ", msg.qos)
|
||||
# print("Payload : ", msg.payload)
|
||||
msg = msg.payload.decode()
|
||||
if len(msg) != 0:
|
||||
# all_data = msg.split('&', 1)
|
||||
# user_ip = all_data[0]
|
||||
# msg = all_data[1]
|
||||
# print("Publisher : ",user_ip)
|
||||
print("====[ Result ]=======================")
|
||||
print("Incomming Message Length : ", len(msg))
|
||||
# print("Incomming Message Type : ", type(msg))
|
||||
real_data = payload_process(msg)
|
||||
# real_data = real_data[1]
|
||||
print("Decryption Result (Plaintext) : ", real_data)
|
||||
print("Result Length : ", len(real_data))
|
||||
print(" ")
|
||||
return real_data
|
||||
|
||||
base_name = "cipher"
|
||||
base_name_RSA3 = "RSA_3072"
|
||||
base_name_RSA7 = "RSA_7680"
|
||||
|
||||
client.connect(broker,port)
|
||||
client.on_connect = on_connect
|
||||
client.on_message = on_message
|
||||
client.loop_forever()
|
31
infidel-code/py_wrappers/URG_PLAINGEN.py
Normal file
31
infidel-code/py_wrappers/URG_PLAINGEN.py
Normal file
@ -0,0 +1,31 @@
|
||||
import random
|
||||
import string
|
||||
|
||||
|
||||
plain_length = []
|
||||
|
||||
def randstring(n):
|
||||
letters = string.digits
|
||||
return ''.join(random.choice(letters) for i in range(n))
|
||||
def rand_int(n):
|
||||
range_start = 10**(n-1)
|
||||
range_end = (10**n)-1
|
||||
return random.randint(range_start, range_end)
|
||||
i = 1
|
||||
while i <=16 :
|
||||
plain_length.append(i*1)
|
||||
i = i + 1
|
||||
base_name = "plain"
|
||||
|
||||
def file_handler(f_name, num, plain):
|
||||
plain = str(plain)
|
||||
num = str(num).zfill(2)
|
||||
f = open("./plain/"+f_name+"_"+num+".txt", "w")
|
||||
f.write(plain)
|
||||
|
||||
for i in plain_length:
|
||||
|
||||
plain = rand_int(i)
|
||||
file_handler(base_name, i, plain)
|
||||
|
||||
|
0
infidel-code/py_wrappers/__init__.py
Normal file
0
infidel-code/py_wrappers/__init__.py
Normal file
Binary file not shown.
BIN
infidel-code/py_wrappers/__pycache__/__init__.cpython-39.pyc
Normal file
BIN
infidel-code/py_wrappers/__pycache__/__init__.cpython-39.pyc
Normal file
Binary file not shown.
Binary file not shown.
52
infidel-code/py_wrappers/aes.py
Normal file
52
infidel-code/py_wrappers/aes.py
Normal file
@ -0,0 +1,52 @@
|
||||
from Crypto.Cipher import AES
|
||||
import os
|
||||
import binascii
|
||||
import time
|
||||
import hashlib
|
||||
|
||||
def aes(key,PLAIN):
|
||||
# print("=====================================AES128")
|
||||
# print("Length Key AES: ",len(key))
|
||||
# key = '12345678901234567890123456789012'
|
||||
IV = 16 * '\x00'
|
||||
cipher = AES.new(key, AES.MODE_CBC, IV=IV)
|
||||
msg =cipher.encrypt(PLAIN)
|
||||
# haha="Let the Silence be with us all, through all the hard time we embrace"
|
||||
# haha=haha.zfill(96)
|
||||
# print(len(haha))# #
|
||||
decipher = AES.new(key, AES.MODE_CBC,IV=IV)
|
||||
# print(decipher.decrypt(msg))
|
||||
hal=(binascii.hexlify(msg).decode('utf8'))
|
||||
print("Length AES Cipher: ",len(hal))
|
||||
return msg
|
||||
def rsa(key2,PLAIN):
|
||||
# print("=====================================RSA128"
|
||||
# from Crypto.PublicKey import RSA
|
||||
# key2=RSA.generate(3072)
|
||||
start=time.time()
|
||||
publickey=key2.publickey()
|
||||
# enc=publickey.encrypt("Attack the Fortress at midnight ",0)
|
||||
print(PLAIN)
|
||||
enc=publickey.encrypt(PLAIN.encode('utf-8'),0)
|
||||
o=(binascii.hexlify(enc[0])).decode('utf8')
|
||||
print("Length RSA Cipher: ",len(o))
|
||||
end=time.time()-start
|
||||
return o, end
|
||||
# b=binascii.unhexlify(o)
|
||||
# if b==enc[0]:
|
||||
# print("TRUE")
|
||||
def ntru(key,PLAIN):
|
||||
# print("=====================================NTRU")
|
||||
with open("fortress","rb") as n:
|
||||
d=n.read()
|
||||
nn=(binascii.hexlify(d).decode('utf8'))
|
||||
print("Length: ",len(nn))
|
||||
|
||||
|
||||
|
||||
# with open("aes128.txt","w") as aes:
|
||||
# aes.write(msg.encode("hex"))
|
||||
# with open("rsa128.txt","w") as rsa:
|
||||
# rsa.write(o)
|
||||
# with open("ntru128.txt","w") as ntru:
|
||||
# ntru.write(nn)
|
55
infidel-code/py_wrappers/blast_rciot.py
Executable file
55
infidel-code/py_wrappers/blast_rciot.py
Executable file
@ -0,0 +1,55 @@
|
||||
#!/bin/env python3
|
||||
|
||||
import paho.mqtt.client as paho
|
||||
import csv
|
||||
import pandas as pd
|
||||
# from Publish_rciot_NTRU import main as sec_pub
|
||||
## from SABER_KEM.test.so_handler import main as sec_pub
|
||||
import time
|
||||
|
||||
broker = "192.168.1.17"
|
||||
client = paho.Client()
|
||||
port = 1883
|
||||
|
||||
with open('data/rciot_data.csv') as f: # 1 Fasa
|
||||
# with open('./file.csv') as f: # 3 Fasa
|
||||
data=[tuple(line) for line in csv.reader(f)]
|
||||
# data = pd.DataFrame()
|
||||
|
||||
print(data[0])
|
||||
|
||||
header = ["Message Length", "Encryption Time"]
|
||||
|
||||
with open("data/saber_enc_time.csv", "w") as f:
|
||||
writer = csv.writer(f)
|
||||
writer.writerow(header)
|
||||
|
||||
def publish_enc():
|
||||
x = 0
|
||||
for i in data[10:500]:
|
||||
print("===> : "+str(x))
|
||||
dec_time = sec_pub(str(i))
|
||||
with open("data/saber_enc_time.csv", "a+") as f:
|
||||
writer = csv.writer(f)
|
||||
writer.writerow([len(str(i)), dec_time])
|
||||
x = x+1
|
||||
time.sleep(0.5)
|
||||
|
||||
def publish_nonenc():
|
||||
x = 0
|
||||
for i in data[10:500]:
|
||||
print("===> : "+str(x))
|
||||
status = client.connect(broker,port)
|
||||
client.loop_start()
|
||||
client.publish("device01/msg", str(i))
|
||||
# with open("saber_enc_time.csv", "a+") as f:
|
||||
# writer = csv.writer(f)
|
||||
# writer.writerow([len(str(i)), dec_time])
|
||||
x = x+1
|
||||
time.sleep(0.5)
|
||||
|
||||
|
||||
# publish_enc()
|
||||
for i in data[1:5]:
|
||||
print(str(i))
|
||||
|
68
infidel-code/py_wrappers/python_Connector.py
Normal file
68
infidel-code/py_wrappers/python_Connector.py
Normal file
@ -0,0 +1,68 @@
|
||||
from ctypes import *
|
||||
import time
|
||||
import _ctypes
|
||||
|
||||
def u_encrypt(message, rec,x):
|
||||
so_file = 'bin/enc_'+x+'.so'
|
||||
u_enc = CDLL(so_file)
|
||||
u_enc.main.restype = c_double
|
||||
c_return = u_enc.main(message.encode('utf-8'), rec.encode('utf-8'))
|
||||
_ctypes.dlclose(u_enc._handle)
|
||||
return c_return
|
||||
|
||||
def u_decrypt(arg,x):
|
||||
so_file2 = 'bin/dec_'+x+'.so'
|
||||
arg_len = len(arg)
|
||||
print("Length ", arg_len)
|
||||
u_dec = CDLL(so_file2)
|
||||
u_dec.main.restype = c_char_p
|
||||
u_dec.main.argtype = c_char_p
|
||||
c_return = u_dec.main(arg)
|
||||
_ctypes.dlclose(u_dec._handle)
|
||||
print("C Return ",c_return)
|
||||
return c_return
|
||||
|
||||
def in_test():
|
||||
|
||||
plain = input("Enter plain text : ")
|
||||
result = u_encrypt(plain)
|
||||
|
||||
# u_decrypt()
|
||||
print(result)
|
||||
|
||||
def rapid_enc(x):
|
||||
print("input len : %d" % len(plain))
|
||||
u_encrypt(plain, x)
|
||||
|
||||
def rapid_dec(x):
|
||||
u_decrypt(x)
|
||||
|
||||
def file_handler(f_name, num, std):
|
||||
num = str(num).zfill(2)
|
||||
f = open(".cipher/ees"+std+"/"+f_name+"_"+num+".dat", "rb")
|
||||
cipher = f.read()
|
||||
print("Python log : cipher len ",len(cipher))
|
||||
return cipher
|
||||
|
||||
# print("C decrypt time : ", u_decrypt())
|
||||
# print("C Enc : ", u_encrypt("ADADADADA"))
|
||||
|
||||
def dec_test(std, rpt):
|
||||
for i in range(rpt):
|
||||
recs = str(i).zfill(3)
|
||||
# rapid_enc(recs)
|
||||
args = file_handler("cipher", recs, std)
|
||||
u_decrypt(args, std)
|
||||
print("-"*100)
|
||||
|
||||
def enc_test(std, rpt):
|
||||
for i in range(rpt):
|
||||
recs = str(i).zfill(3)
|
||||
plain = "This is Legit "+recs+" "+std
|
||||
u_encrypt(plain, recs, std)
|
||||
print("-"*100)
|
||||
|
||||
def enc_dec_test(x, rpt):
|
||||
enc_test(x, rpt)
|
||||
dec_test(x, rpt)
|
||||
|
205
infidel-code/py_wrappers/time_NTRUvsall_DEC.py
Executable file
205
infidel-code/py_wrappers/time_NTRUvsall_DEC.py
Executable file
@ -0,0 +1,205 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import matplotlib.pyplot as plt
|
||||
from matplotlib.pyplot import rcParams
|
||||
from cryptography.fernet import Fernet
|
||||
from cryptography.hazmat.backends import default_backend
|
||||
from cryptography.hazmat.primitives import hashes
|
||||
from cryptography.hazmat.primitives.kdf.pbkdf2 import PBKDF2HMAC
|
||||
from Crypto.Cipher import AES
|
||||
import base64
|
||||
import csv
|
||||
import struct
|
||||
import time
|
||||
import string
|
||||
import random
|
||||
import aes
|
||||
import numpy as np
|
||||
from ctypes import *
|
||||
import _ctypes
|
||||
from Crypto.PublicKey import RSA
|
||||
from Crypto.Cipher import PKCS1_OAEP
|
||||
import os
|
||||
#from multiprocessing import Pool
|
||||
|
||||
def u_decrypt(arg):
|
||||
so_file2 = 'EES401/URG_decrypt.so'
|
||||
arg_len = len(arg)
|
||||
print("Length ", arg_len)
|
||||
u_dec = CDLL(so_file2)
|
||||
u_dec.main.restype = c_char_p
|
||||
u_dec.main.argtype = c_char_p
|
||||
c_return = u_dec.main(arg)
|
||||
_ctypes.dlclose(u_dec._handle)
|
||||
print("C Return ",c_return)
|
||||
return c_return
|
||||
|
||||
def u_decrypt593(arg):
|
||||
so_file2 = 'EES593/URG_decrypt.so'
|
||||
arg_len = len(arg)
|
||||
print("Length ", arg_len)
|
||||
u_dec = CDLL(so_file2)
|
||||
u_dec.main.restype = c_char_p
|
||||
u_dec.main.argtype = c_char_p
|
||||
c_return = u_dec.main(arg)
|
||||
_ctypes.dlclose(u_dec._handle)
|
||||
print("C Return ",c_return)
|
||||
return c_return
|
||||
|
||||
def Fernet_process():
|
||||
password="urg123"
|
||||
pass_byte=password.encode()
|
||||
salt=b'salt_'
|
||||
kdf = PBKDF2HMAC(
|
||||
algorithm=hashes.SHA256(),
|
||||
length=32,
|
||||
salt=salt,
|
||||
iterations=100,
|
||||
backend=default_backend()
|
||||
)
|
||||
key = base64.urlsafe_b64encode(kdf.derive(pass_byte))
|
||||
return key
|
||||
|
||||
def file_handler(f_name, num):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./cipher_bak/"+f_name+"_"+num+".dat", "rb")
|
||||
#file_val = list(f.read())
|
||||
#file_val = bytearray(file_val)
|
||||
file_val = f.read()
|
||||
return file_val
|
||||
|
||||
def rsa_file_handler(f_name, num):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./cipher/"+f_name+"_"+num+".dat", "rb")
|
||||
return f.read()
|
||||
|
||||
NTRU_var = []
|
||||
NTRU593_var = []
|
||||
RSA_var = []
|
||||
RSA2_var = []
|
||||
AES_var = []
|
||||
Fernet_var = []
|
||||
plain_length = []
|
||||
|
||||
aes_key = "1234123412341234"
|
||||
IV = 16 * '\x00'
|
||||
|
||||
base_name = "cipher_EES401"
|
||||
base_name_593 = "cipher_EES593"
|
||||
base_name_RSA3 = "RSA_3072"
|
||||
base_name_RSA7 = "RSA_7680"
|
||||
base_name_aes = "AES_128"
|
||||
base_name_Fernet = "Fernet_128"
|
||||
|
||||
i = 1
|
||||
while i <= 16:
|
||||
plain_length.append(i)
|
||||
i = i+1
|
||||
|
||||
for i in plain_length:
|
||||
|
||||
plain = rsa_file_handler(base_name, i)
|
||||
plain2 = rsa_file_handler(base_name_593, i)
|
||||
fernet_key = Fernet_process()
|
||||
#print("Cip now : ", plain)
|
||||
|
||||
start = time.perf_counter()
|
||||
print("NTRU PLAIN ",u_decrypt(plain))
|
||||
end=time.perf_counter()-start
|
||||
NTRU_var.append(end)
|
||||
|
||||
start=time.perf_counter()
|
||||
print("NTRU PLAIN 593 ",u_decrypt593(plain2))
|
||||
end=time.perf_counter()-start
|
||||
NTRU593_var.append(end)
|
||||
|
||||
fernet_cipher = rsa_file_handler(base_name_Fernet, i)
|
||||
time_s = time.perf_counter()
|
||||
Fernet_data = Fernet(fernet_key).decrypt(fernet_cipher)
|
||||
time_e = time.perf_counter()
|
||||
end = time_e - time_s
|
||||
Fernet_var.append(time_e - time_s)
|
||||
|
||||
print("Fernet Result : ", Fernet_data)
|
||||
print("Fernet Cipher Length : ",len(fernet_cipher))
|
||||
print("Fernet Decryption Time : ",end)
|
||||
print(" ")
|
||||
|
||||
aes_cipher = rsa_file_handler(base_name_aes, i)
|
||||
start=time.perf_counter()
|
||||
AES128= AES.new(aes_key, AES.MODE_CBC, IV).decrypt(aes_cipher)
|
||||
end=time.perf_counter()-start
|
||||
AES_var.append(end)
|
||||
|
||||
print("AES Result : ", AES128.decode('ascii'))
|
||||
print("AES128 Cipher Length : ",len(aes_cipher))
|
||||
print("AES128 Decryption Time : ",end)
|
||||
print(" ")
|
||||
|
||||
rsa3072 = open("RSA3072_priv.pem", "r").read()
|
||||
start=time.perf_counter()
|
||||
rsa_priv = RSA.importKey(rsa3072)
|
||||
RSA_dec = rsa_priv.decrypt(rsa_file_handler(base_name_RSA3, i))
|
||||
end=time.perf_counter()-start
|
||||
RSA_var.append(end)
|
||||
print("3072 Result : ", RSA_dec)
|
||||
print("RSA Cipher length", len(plain))
|
||||
print("RSA Decryption Time : ", end)
|
||||
print(" ")
|
||||
|
||||
rsa7680 = open("RSA7680_priv.pem", "r").read()
|
||||
start=time.perf_counter()
|
||||
RSA2_priv = RSA.importKey(rsa7680)
|
||||
RSA2_dec = RSA2_priv.decrypt(rsa_file_handler(base_name_RSA3, i))
|
||||
end=time.perf_counter()-start
|
||||
RSA2_var.append(end)
|
||||
print("7680 Result : ", RSA_dec)
|
||||
print("RSA2 Plain length", len(plain))
|
||||
print("RSA2 Encryption Time : ", end)
|
||||
print(" ")
|
||||
|
||||
|
||||
NTRU_var = [ round(i * 1000, 3) for i in NTRU_var ]
|
||||
NTRU593_var = [ round(i * 1000, 3) for i in NTRU593_var ]
|
||||
RSA_var = [ round(i * 1000, 3) for i in RSA_var ]
|
||||
RSA2_var = [ round(i * 1000, 3) for i in RSA2_var ]
|
||||
AES_var = [ round(i * 1000, 3) for i in AES_var ]
|
||||
Fernet_var = [ round(i * 1000, 3) for i in Fernet_var ]
|
||||
|
||||
|
||||
header = ["NTRU 401","NTRU 593", "RSA_2048", "RSA_7680", "AES128", "Fernet128"]
|
||||
all_time = zip(NTRU_var, NTRU593_var, RSA_var, RSA2_var, AES_var, Fernet_var)
|
||||
with open("Benchmark_Decryption_Time.csv", "w") as f:
|
||||
writer = csv.writer(f)
|
||||
writer.writerow(header)
|
||||
for row in all_time:
|
||||
writer.writerow(row)
|
||||
|
||||
print(NTRU_var)
|
||||
print(AES_var)
|
||||
y =np.array(plain_length)
|
||||
plt.figure(figsize=(11,5))
|
||||
rcParams['legend.fontsize'] = '50'
|
||||
rcParams['font.family'] = 'sans-serif'
|
||||
rcParams['font.size'] = '16'
|
||||
plt.scatter(y ,AES_var ,marker="x" ,label='AES 128' )
|
||||
plt.scatter(y ,Fernet_var ,marker="^" ,label='Fernet 128')
|
||||
plt.scatter(y ,RSA_var ,marker="P" ,label='RSA 2048' )
|
||||
plt.scatter(y ,RSA2_var ,marker="d" ,label='RSA 7680' )
|
||||
plt.scatter(y ,NTRU_var ,marker="v" ,label='NTRU 401' )
|
||||
plt.scatter(y ,NTRU593_var ,marker="o" ,label='NTRU 593' )
|
||||
plt.plot(y, AES_var, linestyle=':')
|
||||
plt.plot(y, Fernet_var, linestyle=':')
|
||||
plt.plot(y, RSA_var, linestyle=':')
|
||||
plt.plot(y, RSA2_var, linestyle=':')
|
||||
plt.plot(y, NTRU_var, linestyle=':')
|
||||
plt.plot(y, NTRU593_var, linestyle=':')
|
||||
plt.xticks(list(range(1,17)))
|
||||
plt.xlabel("Length Plain text")
|
||||
plt.ylabel("Time (ms)")
|
||||
plt.yscale('log')
|
||||
plt.gca().set_yticks([0.03, 1.90], minor=True)
|
||||
plt.legend(bbox_to_anchor=(1.04,1), loc="upper left", fontsize='14')
|
||||
plt.subplots_adjust(right=0.8)
|
||||
plt.tight_layout()
|
||||
plt.savefig('time_comparsion_DEC.eps', format='eps', dpi=900)
|
221
infidel-code/py_wrappers/time_NTRUvsall_ENC.py
Executable file
221
infidel-code/py_wrappers/time_NTRUvsall_ENC.py
Executable file
@ -0,0 +1,221 @@
|
||||
#!/usr/bin/env python3
|
||||
import matplotlib.pyplot as plt
|
||||
from matplotlib.pyplot import rcParams
|
||||
from matplotlib.ticker import FormatStrFormatter
|
||||
from cryptography.fernet import Fernet
|
||||
from cryptography.hazmat.backends import default_backend
|
||||
from cryptography.hazmat.primitives import hashes
|
||||
from cryptography.hazmat.primitives.kdf.pbkdf2 import PBKDF2HMAC
|
||||
import numpy as np
|
||||
import base64
|
||||
import time
|
||||
import string
|
||||
import random
|
||||
import aes
|
||||
import numpy as np
|
||||
from ctypes import *
|
||||
import _ctypes
|
||||
from Crypto.PublicKey import RSA
|
||||
from Crypto.Cipher import PKCS1_OAEP
|
||||
import csv
|
||||
#from multiprocessing import Pool
|
||||
|
||||
# C stuff
|
||||
|
||||
def u_encrypt(arg, num):
|
||||
if len(str(num)) < 2:
|
||||
num = str(num).zfill(2)
|
||||
num = str(num)
|
||||
so_file = 'EES401/URG_encrypt.so'
|
||||
u_enc = CDLL(so_file)
|
||||
u_enc.main.restype = c_double
|
||||
u_enc.main.argtype = [c_char_p, c_char_p]
|
||||
c_return = u_enc.main(arg.encode('utf-8'), num.encode('utf-8'))
|
||||
_ctypes.dlclose(u_enc._handle)
|
||||
print("C Return ", c_return)
|
||||
return c_return
|
||||
|
||||
def u_encrypt593(arg, num):
|
||||
if len(str(num)) < 2:
|
||||
num = str(num).zfill(2)
|
||||
num = str(num)
|
||||
so_file = 'EES593/URG_encrypt.so'
|
||||
u_enc = CDLL(so_file)
|
||||
u_enc.main.restype = c_double
|
||||
u_enc.main.argtype = [c_char_p, c_char_p]
|
||||
c_return = u_enc.main(arg.encode('utf-8'), num.encode('utf-8'))
|
||||
_ctypes.dlclose(u_enc._handle)
|
||||
print("C Return ", c_return)
|
||||
return c_return
|
||||
|
||||
def Fernet_process():
|
||||
password="urg123"
|
||||
pass_byte=password.encode()
|
||||
salt=b'salt_'
|
||||
kdf = PBKDF2HMAC(
|
||||
algorithm=hashes.SHA256(),
|
||||
length=32,
|
||||
salt=salt,
|
||||
iterations=100,
|
||||
backend=default_backend()
|
||||
)
|
||||
key = base64.urlsafe_b64encode(kdf.derive(pass_byte))
|
||||
return key
|
||||
|
||||
def randString(length):
|
||||
letters = string.ascii_lowercase
|
||||
return ''.join(random.choice(letters) for i in range(length))
|
||||
|
||||
def file_handler(f_name, num):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./plain/"+f_name+"_"+num+".txt", "r")
|
||||
return f.read()
|
||||
|
||||
def rsa_file_handler(f_name, num, cipher):
|
||||
num = str(num).zfill(2)
|
||||
f = open("./cipher/"+f_name+"_"+num+".dat", "wb")
|
||||
f.write(cipher)
|
||||
|
||||
|
||||
NTRU_var = []
|
||||
NTRU593_var = []
|
||||
RSA_var = []
|
||||
RSA2_var = []
|
||||
AES_var = []
|
||||
Fernet_var = []
|
||||
|
||||
aes_key = "1234123412341234"
|
||||
|
||||
base_name = "plain"
|
||||
base_name_RSA3 = "RSA_3072"
|
||||
base_name_RSA7 = "RSA_7680"
|
||||
base_name_aes = "AES_128"
|
||||
base_name_Fernet = "Fernet_128"
|
||||
|
||||
# i = 3
|
||||
# while i <= 5 :
|
||||
# plain_length.append(i*1)
|
||||
# i = i + 1
|
||||
n = input("Enter number of file ")
|
||||
n = int(n)
|
||||
for i in range(1, n+1):
|
||||
|
||||
plain = file_handler(base_name, i)
|
||||
print("Plain now : ", plain)
|
||||
fernet_key = Fernet_process()
|
||||
|
||||
x = 16 - len(plain)
|
||||
aes_plain = plain + (" "*x)
|
||||
|
||||
NTRU_var.append(u_encrypt(plain, i))
|
||||
|
||||
print("NTRU EES401 Plain Length : ",len(plain))
|
||||
print(" ")
|
||||
|
||||
|
||||
NTRU593_var.append(u_encrypt593(plain, i))
|
||||
|
||||
print("NTRU EES593 Plain Length : ",len(plain))
|
||||
print(" ")
|
||||
|
||||
time_s = time.perf_counter()
|
||||
send_data = Fernet(fernet_key).encrypt(plain.encode())
|
||||
rsa_file_handler(base_name_Fernet, i, send_data)
|
||||
time_e = time.perf_counter()
|
||||
end = time_e - time_s
|
||||
Fernet_var.append(time_e - time_s)
|
||||
|
||||
print("Fernet Plain Length : ",len(plain))
|
||||
print("Fernet Key Length : ",len(fernet_key))
|
||||
print("Fernet Encryption Time : ",end)
|
||||
print(" ")
|
||||
|
||||
start=time.perf_counter()
|
||||
AES128=aes.aes(aes_key, aes_plain)
|
||||
end=time.perf_counter()-start
|
||||
rsa_file_handler(base_name_aes, i, AES128)
|
||||
AES_var.append(end)
|
||||
|
||||
print("AES128 Plain Length : ",len(aes_plain))
|
||||
print("AES128 Key Length : ",len(aes_key))
|
||||
print("AES128 Encryption Time : ",end)
|
||||
print(" ")
|
||||
|
||||
rsa3072 = open("RSA3072_pub.pem", "r").read()
|
||||
start=time.perf_counter()
|
||||
rsa_pub = RSA.importKey(rsa3072)
|
||||
RSA_enc = rsa_pub.encrypt(plain.encode('utf8'), 32)
|
||||
#RSA_enc = rsa_pub.encrypt(plain.encode('utf8'), 32)
|
||||
end=time.perf_counter()-start
|
||||
cipher = RSA_enc[0]
|
||||
#cipher = str(cipher).encode('utf-8')
|
||||
rsa_file_handler(base_name_RSA3, i, cipher)
|
||||
RSA_var.append(end)
|
||||
print("RSA Plain length", len(plain))
|
||||
print("RSA Key Length : ",len(str(rsa_pub.n)))
|
||||
print("RSA Encryption Time : ", end)
|
||||
print(" ")
|
||||
|
||||
rsa7680 = open("RSA7680_pub.pem", "r").read()
|
||||
start=time.perf_counter()
|
||||
RSA2_pub = RSA.importKey(rsa7680)
|
||||
#RSA2_pub = RSA2_key.publickey().exportKey("PEM")
|
||||
RSA2_enc = RSA2_pub.encrypt(plain.encode('utf8'), 32)
|
||||
#RSA2_enc = PKCS1_OAEP.new(RSA2_pub).encrypt(plain.encode('utf8'), 32)
|
||||
end=time.perf_counter()-start
|
||||
#print("RSA Stufff ", RSA2_enc[0])
|
||||
cipher = RSA2_enc[0]
|
||||
#cipher = str(cipher).encode('utf-8')
|
||||
rsa_file_handler(base_name_RSA7, i, cipher )
|
||||
RSA2_var.append(end)
|
||||
print("RSA2 Plain length", len(plain))
|
||||
print("RSA2 Key Length : ",len(str(RSA2_pub.n.bit_length)))
|
||||
print("RSA2 Encryption Time : ", end)
|
||||
print(" ")
|
||||
|
||||
NTRU_var = [ round(i * 1000, 3) for i in NTRU_var ]
|
||||
NTRU593_var = [ round(i * 1000, 3) for i in NTRU593_var ]
|
||||
RSA_var = [ round(i * 1000, 3) for i in RSA_var ]
|
||||
RSA2_var = [ round(i * 1000, 3) for i in RSA2_var ]
|
||||
AES_var = [ round(i * 1000, 3) for i in AES_var ]
|
||||
Fernet_var = [ round(i * 1000, 3) for i in Fernet_var ]
|
||||
|
||||
plain_length = range(1, n+1)
|
||||
|
||||
header = ["NTRU 401","NTRU 593", "RSA_2048", "RSA_7680", "AES128", "Fernet128"]
|
||||
all_time = zip(NTRU_var, NTRU593_var, RSA_var, RSA2_var, AES_var, Fernet_var)
|
||||
with open("Benchmark_Encryption_Time.csv", "w") as f:
|
||||
writer = csv.writer(f)
|
||||
writer.writerow(header)
|
||||
for row in all_time:
|
||||
writer.writerow(row)
|
||||
|
||||
v = np.linspace(0, 0.5, 5)
|
||||
y =np.array(plain_length)
|
||||
print(NTRU_var)
|
||||
print(AES_var)
|
||||
plt.figure(figsize=(11,5))
|
||||
rcParams['font.family'] = 'sans-serif'
|
||||
rcParams['font.size'] = '16'
|
||||
plt.scatter(y ,AES_var ,marker="x" ,label='AES 128' )
|
||||
plt.scatter(y ,Fernet_var ,marker="^" ,label='Fernet 128')
|
||||
plt.scatter(y ,RSA_var ,marker="P" ,label='RSA 2048' )
|
||||
plt.scatter(y ,RSA2_var ,marker="d" ,label='RSA 7680' )
|
||||
plt.scatter(y ,NTRU_var ,marker="v" ,label='NTRU 401' )
|
||||
plt.scatter(y ,NTRU593_var ,marker="o" ,label='NTRU 593' )
|
||||
plt.plot(y, AES_var, linestyle=':')
|
||||
plt.plot(y, Fernet_var, linestyle=':')
|
||||
plt.plot(y, RSA_var, linestyle=':')
|
||||
plt.plot(y, RSA2_var, linestyle=':')
|
||||
plt.plot(y, NTRU_var, linestyle=':')
|
||||
plt.plot(y, NTRU593_var, linestyle=':')
|
||||
plt.xticks(list(range(1,17)))
|
||||
plt.xlabel("Length Plain text")
|
||||
plt.ylabel("Time (ms)")
|
||||
plt.yscale('log')
|
||||
plt.gca().set_yticks([0.03, 1.90], minor=True)
|
||||
plt.legend(bbox_to_anchor=(1.04,1), loc="upper left", fontsize='14')
|
||||
plt.subplots_adjust(right=0.8)
|
||||
plt.tight_layout()
|
||||
plt.savefig('time_comparsion_ENC.eps', format='eps', dpi=900)
|
||||
plt.show()
|
35
infidel-code/runner.sh
Executable file
35
infidel-code/runner.sh
Executable file
@ -0,0 +1,35 @@
|
||||
#!/bin/bash
|
||||
echo -e "NTRU Test Case - By Infidel"
|
||||
echo -e "\t1. Key gen Test\n\t2. GUI Based Test\n\t3. Rapid Test\n\t4. Another Test"
|
||||
echo -n "Enter the test you want to perform : "
|
||||
read testType
|
||||
|
||||
echo -e "\n..................................................."
|
||||
case $testType in
|
||||
|
||||
1)
|
||||
# echo -e "\tFull Test"
|
||||
echo -e "\t\tEES 401"
|
||||
bin/test_401_full
|
||||
echo -e "\t\tEES 593"
|
||||
bin/test_593_full
|
||||
;;
|
||||
2)
|
||||
echo -e "GUI Wrapper for NTRU "
|
||||
python3 ./py_wrappers/Publisher_GUI.py
|
||||
;;
|
||||
|
||||
3)
|
||||
echo -e "Rapid Test"
|
||||
./call.py
|
||||
;;
|
||||
|
||||
4)
|
||||
echo -e ""
|
||||
python3 py-wrappers/python_Connector.py
|
||||
;;
|
||||
*)
|
||||
echo -n "Wrong input"
|
||||
;;
|
||||
esac
|
||||
|
1
infidel-code/saber_enc_time.csv
Normal file
1
infidel-code/saber_enc_time.csv
Normal file
@ -0,0 +1 @@
|
||||
Message Length,Encryption Time
|
|
16
infidel-code/satan.txt
Normal file
16
infidel-code/satan.txt
Normal file
@ -0,0 +1,16 @@
|
||||
src/ntru_crypto_drbg.c
|
||||
src/ntru_crypto_hash.c
|
||||
src/ntru_crypto_hmac.c
|
||||
src/ntru_crypto_msbyte_uint32.c
|
||||
src/ntru_crypto_ntru_convert.c
|
||||
src/ntru_crypto_ntru_encrypt.c
|
||||
src/ntru_crypto_ntru_encrypt_key.c
|
||||
src/ntru_crypto_ntru_encrypt_param_sets.c
|
||||
src/ntru_crypto_ntru_mgf1.c
|
||||
src/ntru_crypto_ntru_mult_coeffs_karat.c
|
||||
src/ntru_crypto_ntru_mult_indices.c
|
||||
src/ntru_crypto_ntru_poly.c
|
||||
src/ntru_crypto_sha1.c
|
||||
src/ntru_crypto_sha256.c
|
||||
src/ntru_crypto_sha2.c
|
||||
test/test_common.c
|
0
infidel-code/src/.deps/.dirstamp
Normal file
0
infidel-code/src/.deps/.dirstamp
Normal file
@ -0,0 +1 @@
|
||||
# dummy
|
@ -0,0 +1 @@
|
||||
# dummy
|
@ -0,0 +1 @@
|
||||
# dummy
|
@ -0,0 +1 @@
|
||||
# dummy
|
@ -0,0 +1 @@
|
||||
# dummy
|
@ -0,0 +1 @@
|
||||
# dummy
|
@ -0,0 +1 @@
|
||||
# dummy
|
@ -0,0 +1 @@
|
||||
# dummy
|
@ -0,0 +1 @@
|
||||
# dummy
|
@ -0,0 +1 @@
|
||||
# dummy
|
@ -0,0 +1 @@
|
||||
# dummy
|
@ -0,0 +1 @@
|
||||
# dummy
|
@ -0,0 +1 @@
|
||||
# dummy
|
@ -0,0 +1 @@
|
||||
# dummy
|
@ -0,0 +1 @@
|
||||
# dummy
|
@ -0,0 +1 @@
|
||||
# dummy
|
@ -0,0 +1 @@
|
||||
# dummy
|
193
infidel-code/src/.deps/libntruencrypt_la-ntru_crypto_drbg.Plo
Normal file
193
infidel-code/src/.deps/libntruencrypt_la-ntru_crypto_drbg.Plo
Normal file
@ -0,0 +1,193 @@
|
||||
src/libntruencrypt_la-ntru_crypto_drbg.lo: src/ntru_crypto_drbg.c \
|
||||
/usr/include/stdc-predef.h include/ntru_crypto.h \
|
||||
include/ntru_crypto_platform.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h /usr/include/stdint.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h /usr/include/stdlib.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/assert.h \
|
||||
/usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h \
|
||||
include/ntru_crypto_drbg.h include/ntru_crypto_error.h \
|
||||
include/ntru_crypto_drbg.h src/ntru_crypto_hmac.h \
|
||||
include/ntru_crypto_platform.h src/ntru_crypto_hash.h \
|
||||
include/ntru_crypto_error.h src/ntru_crypto_hash_basics.h \
|
||||
src/ntru_crypto_sha1.h src/ntru_crypto_sha.h src/ntru_crypto_sha256.h \
|
||||
src/ntru_crypto_sha2.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
include/ntru_crypto.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h:
|
||||
|
||||
/usr/include/stdint.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
|
||||
/usr/include/assert.h:
|
||||
|
||||
/usr/include/string.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
|
||||
/usr/include/strings.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
|
||||
include/ntru_crypto_drbg.h:
|
||||
|
||||
include/ntru_crypto_error.h:
|
||||
|
||||
include/ntru_crypto_drbg.h:
|
||||
|
||||
src/ntru_crypto_hmac.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
||||
|
||||
src/ntru_crypto_hash.h:
|
||||
|
||||
include/ntru_crypto_error.h:
|
||||
|
||||
src/ntru_crypto_hash_basics.h:
|
||||
|
||||
src/ntru_crypto_sha1.h:
|
||||
|
||||
src/ntru_crypto_sha.h:
|
||||
|
||||
src/ntru_crypto_sha256.h:
|
||||
|
||||
src/ntru_crypto_sha2.h:
|
188
infidel-code/src/.deps/libntruencrypt_la-ntru_crypto_hash.Plo
Normal file
188
infidel-code/src/.deps/libntruencrypt_la-ntru_crypto_hash.Plo
Normal file
@ -0,0 +1,188 @@
|
||||
src/libntruencrypt_la-ntru_crypto_hash.lo: src/ntru_crypto_hash.c \
|
||||
/usr/include/stdc-predef.h include/ntru_crypto.h \
|
||||
include/ntru_crypto_platform.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h /usr/include/stdint.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h /usr/include/stdlib.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/assert.h \
|
||||
/usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h \
|
||||
include/ntru_crypto_drbg.h include/ntru_crypto_error.h \
|
||||
src/ntru_crypto_hash.h include/ntru_crypto_platform.h \
|
||||
include/ntru_crypto_error.h src/ntru_crypto_hash_basics.h \
|
||||
src/ntru_crypto_sha1.h src/ntru_crypto_sha.h src/ntru_crypto_sha256.h \
|
||||
src/ntru_crypto_sha2.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
include/ntru_crypto.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h:
|
||||
|
||||
/usr/include/stdint.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
|
||||
/usr/include/assert.h:
|
||||
|
||||
/usr/include/string.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
|
||||
/usr/include/strings.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
|
||||
include/ntru_crypto_drbg.h:
|
||||
|
||||
include/ntru_crypto_error.h:
|
||||
|
||||
src/ntru_crypto_hash.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
||||
|
||||
include/ntru_crypto_error.h:
|
||||
|
||||
src/ntru_crypto_hash_basics.h:
|
||||
|
||||
src/ntru_crypto_sha1.h:
|
||||
|
||||
src/ntru_crypto_sha.h:
|
||||
|
||||
src/ntru_crypto_sha256.h:
|
||||
|
||||
src/ntru_crypto_sha2.h:
|
190
infidel-code/src/.deps/libntruencrypt_la-ntru_crypto_hmac.Plo
Normal file
190
infidel-code/src/.deps/libntruencrypt_la-ntru_crypto_hmac.Plo
Normal file
@ -0,0 +1,190 @@
|
||||
src/libntruencrypt_la-ntru_crypto_hmac.lo: src/ntru_crypto_hmac.c \
|
||||
/usr/include/stdc-predef.h include/ntru_crypto.h \
|
||||
include/ntru_crypto_platform.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h /usr/include/stdint.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h /usr/include/stdlib.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/assert.h \
|
||||
/usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h \
|
||||
include/ntru_crypto_drbg.h include/ntru_crypto_error.h \
|
||||
src/ntru_crypto_hmac.h include/ntru_crypto_platform.h \
|
||||
src/ntru_crypto_hash.h include/ntru_crypto_error.h \
|
||||
src/ntru_crypto_hash_basics.h src/ntru_crypto_sha1.h \
|
||||
src/ntru_crypto_sha.h src/ntru_crypto_sha256.h src/ntru_crypto_sha2.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
include/ntru_crypto.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h:
|
||||
|
||||
/usr/include/stdint.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
|
||||
/usr/include/assert.h:
|
||||
|
||||
/usr/include/string.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
|
||||
/usr/include/strings.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
|
||||
include/ntru_crypto_drbg.h:
|
||||
|
||||
include/ntru_crypto_error.h:
|
||||
|
||||
src/ntru_crypto_hmac.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
||||
|
||||
src/ntru_crypto_hash.h:
|
||||
|
||||
include/ntru_crypto_error.h:
|
||||
|
||||
src/ntru_crypto_hash_basics.h:
|
||||
|
||||
src/ntru_crypto_sha1.h:
|
||||
|
||||
src/ntru_crypto_sha.h:
|
||||
|
||||
src/ntru_crypto_sha256.h:
|
||||
|
||||
src/ntru_crypto_sha2.h:
|
@ -0,0 +1,173 @@
|
||||
src/libntruencrypt_la-ntru_crypto_msbyte_uint32.lo: \
|
||||
src/ntru_crypto_msbyte_uint32.c /usr/include/stdc-predef.h \
|
||||
include/ntru_crypto.h include/ntru_crypto_platform.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h /usr/include/stdint.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h /usr/include/stdlib.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/assert.h \
|
||||
/usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h \
|
||||
include/ntru_crypto_drbg.h include/ntru_crypto_error.h \
|
||||
src/ntru_crypto_msbyte_uint32.h include/ntru_crypto_platform.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
include/ntru_crypto.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h:
|
||||
|
||||
/usr/include/stdint.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
|
||||
/usr/include/assert.h:
|
||||
|
||||
/usr/include/string.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
|
||||
/usr/include/strings.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
|
||||
include/ntru_crypto_drbg.h:
|
||||
|
||||
include/ntru_crypto_error.h:
|
||||
|
||||
src/ntru_crypto_msbyte_uint32.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
@ -0,0 +1,171 @@
|
||||
src/libntruencrypt_la-ntru_crypto_ntru_convert.lo: \
|
||||
src/ntru_crypto_ntru_convert.c /usr/include/stdc-predef.h \
|
||||
include/ntru_crypto.h include/ntru_crypto_platform.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h /usr/include/stdint.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h /usr/include/stdlib.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/assert.h \
|
||||
/usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h \
|
||||
include/ntru_crypto_drbg.h include/ntru_crypto_error.h \
|
||||
src/ntru_crypto_ntru_convert.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
include/ntru_crypto.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h:
|
||||
|
||||
/usr/include/stdint.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
|
||||
/usr/include/assert.h:
|
||||
|
||||
/usr/include/string.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
|
||||
/usr/include/strings.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
|
||||
include/ntru_crypto_drbg.h:
|
||||
|
||||
include/ntru_crypto_error.h:
|
||||
|
||||
src/ntru_crypto_ntru_convert.h:
|
@ -0,0 +1,203 @@
|
||||
src/libntruencrypt_la-ntru_crypto_ntru_encrypt.lo: \
|
||||
src/ntru_crypto_ntru_encrypt.c /usr/include/stdc-predef.h \
|
||||
include/ntru_crypto.h include/ntru_crypto_platform.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h /usr/include/stdint.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h /usr/include/stdlib.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/assert.h \
|
||||
/usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h \
|
||||
include/ntru_crypto_drbg.h include/ntru_crypto_error.h \
|
||||
src/ntru_crypto_ntru_encrypt_param_sets.h src/ntru_crypto_hash_basics.h \
|
||||
include/ntru_crypto_platform.h src/ntru_crypto_ntru_encrypt_key.h \
|
||||
src/ntru_crypto_ntru_convert.h src/ntru_crypto_ntru_poly.h \
|
||||
src/ntru_crypto_ntru_mgf1.h src/ntru_crypto_hash.h \
|
||||
include/ntru_crypto_error.h src/ntru_crypto_sha1.h src/ntru_crypto_sha.h \
|
||||
src/ntru_crypto_sha256.h src/ntru_crypto_sha2.h \
|
||||
include/ntru_crypto_drbg.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
include/ntru_crypto.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h:
|
||||
|
||||
/usr/include/stdint.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
|
||||
/usr/include/assert.h:
|
||||
|
||||
/usr/include/string.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
|
||||
/usr/include/strings.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
|
||||
include/ntru_crypto_drbg.h:
|
||||
|
||||
include/ntru_crypto_error.h:
|
||||
|
||||
src/ntru_crypto_ntru_encrypt_param_sets.h:
|
||||
|
||||
src/ntru_crypto_hash_basics.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
||||
|
||||
src/ntru_crypto_ntru_encrypt_key.h:
|
||||
|
||||
src/ntru_crypto_ntru_convert.h:
|
||||
|
||||
src/ntru_crypto_ntru_poly.h:
|
||||
|
||||
src/ntru_crypto_ntru_mgf1.h:
|
||||
|
||||
src/ntru_crypto_hash.h:
|
||||
|
||||
include/ntru_crypto_error.h:
|
||||
|
||||
src/ntru_crypto_sha1.h:
|
||||
|
||||
src/ntru_crypto_sha.h:
|
||||
|
||||
src/ntru_crypto_sha256.h:
|
||||
|
||||
src/ntru_crypto_sha2.h:
|
||||
|
||||
include/ntru_crypto_drbg.h:
|
@ -0,0 +1,181 @@
|
||||
src/libntruencrypt_la-ntru_crypto_ntru_encrypt_key.lo: \
|
||||
src/ntru_crypto_ntru_encrypt_key.c /usr/include/stdc-predef.h \
|
||||
include/ntru_crypto.h include/ntru_crypto_platform.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h /usr/include/stdint.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h /usr/include/stdlib.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/assert.h \
|
||||
/usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h \
|
||||
include/ntru_crypto_drbg.h include/ntru_crypto_error.h \
|
||||
src/ntru_crypto_ntru_encrypt_key.h src/ntru_crypto_ntru_convert.h \
|
||||
src/ntru_crypto_ntru_encrypt_param_sets.h src/ntru_crypto_hash_basics.h \
|
||||
include/ntru_crypto_platform.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
include/ntru_crypto.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h:
|
||||
|
||||
/usr/include/stdint.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
|
||||
/usr/include/assert.h:
|
||||
|
||||
/usr/include/string.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
|
||||
/usr/include/strings.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
|
||||
include/ntru_crypto_drbg.h:
|
||||
|
||||
include/ntru_crypto_error.h:
|
||||
|
||||
src/ntru_crypto_ntru_encrypt_key.h:
|
||||
|
||||
src/ntru_crypto_ntru_convert.h:
|
||||
|
||||
src/ntru_crypto_ntru_encrypt_param_sets.h:
|
||||
|
||||
src/ntru_crypto_hash_basics.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
@ -0,0 +1,176 @@
|
||||
src/libntruencrypt_la-ntru_crypto_ntru_encrypt_param_sets.lo: \
|
||||
src/ntru_crypto_ntru_encrypt_param_sets.c /usr/include/stdc-predef.h \
|
||||
include/ntru_crypto.h include/ntru_crypto_platform.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h /usr/include/stdint.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h /usr/include/stdlib.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/assert.h \
|
||||
/usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h \
|
||||
include/ntru_crypto_drbg.h include/ntru_crypto_error.h \
|
||||
src/ntru_crypto_ntru_encrypt_param_sets.h src/ntru_crypto_hash_basics.h \
|
||||
include/ntru_crypto_platform.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
include/ntru_crypto.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h:
|
||||
|
||||
/usr/include/stdint.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
|
||||
/usr/include/assert.h:
|
||||
|
||||
/usr/include/string.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
|
||||
/usr/include/strings.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
|
||||
include/ntru_crypto_drbg.h:
|
||||
|
||||
include/ntru_crypto_error.h:
|
||||
|
||||
src/ntru_crypto_ntru_encrypt_param_sets.h:
|
||||
|
||||
src/ntru_crypto_hash_basics.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
@ -0,0 +1,193 @@
|
||||
src/libntruencrypt_la-ntru_crypto_ntru_mgf1.lo: \
|
||||
src/ntru_crypto_ntru_mgf1.c /usr/include/stdc-predef.h \
|
||||
include/ntru_crypto.h include/ntru_crypto_platform.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h /usr/include/stdint.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h /usr/include/stdlib.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/assert.h \
|
||||
/usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h \
|
||||
include/ntru_crypto_drbg.h include/ntru_crypto_error.h \
|
||||
src/ntru_crypto_ntru_mgf1.h src/ntru_crypto_hash.h \
|
||||
include/ntru_crypto_platform.h include/ntru_crypto_error.h \
|
||||
src/ntru_crypto_hash_basics.h src/ntru_crypto_sha1.h \
|
||||
src/ntru_crypto_sha.h src/ntru_crypto_sha256.h src/ntru_crypto_sha2.h \
|
||||
src/ntru_crypto_ntru_convert.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
include/ntru_crypto.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h:
|
||||
|
||||
/usr/include/stdint.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
|
||||
/usr/include/assert.h:
|
||||
|
||||
/usr/include/string.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
|
||||
/usr/include/strings.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
|
||||
include/ntru_crypto_drbg.h:
|
||||
|
||||
include/ntru_crypto_error.h:
|
||||
|
||||
src/ntru_crypto_ntru_mgf1.h:
|
||||
|
||||
src/ntru_crypto_hash.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
||||
|
||||
include/ntru_crypto_error.h:
|
||||
|
||||
src/ntru_crypto_hash_basics.h:
|
||||
|
||||
src/ntru_crypto_sha1.h:
|
||||
|
||||
src/ntru_crypto_sha.h:
|
||||
|
||||
src/ntru_crypto_sha256.h:
|
||||
|
||||
src/ntru_crypto_sha2.h:
|
||||
|
||||
src/ntru_crypto_ntru_convert.h:
|
@ -0,0 +1,176 @@
|
||||
src/libntruencrypt_la-ntru_crypto_ntru_mult_coeffs_karat.lo: \
|
||||
src/ntru_crypto_ntru_mult_coeffs_karat.c /usr/include/stdc-predef.h \
|
||||
include/ntru_crypto.h include/ntru_crypto_platform.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h /usr/include/stdint.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h /usr/include/stdlib.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/assert.h \
|
||||
/usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h \
|
||||
include/ntru_crypto_drbg.h include/ntru_crypto_error.h \
|
||||
src/ntru_crypto_ntru_poly.h src/ntru_crypto_hash_basics.h \
|
||||
include/ntru_crypto_platform.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
include/ntru_crypto.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stdint.h:
|
||||
|
||||
/usr/include/stdint.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/sys/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/sysmacros.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
|
||||
/usr/include/assert.h:
|
||||
|
||||
/usr/include/string.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
|
||||
/usr/include/strings.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
|
||||
include/ntru_crypto_drbg.h:
|
||||
|
||||
include/ntru_crypto_error.h:
|
||||
|
||||
src/ntru_crypto_ntru_poly.h:
|
||||
|
||||
src/ntru_crypto_hash_basics.h:
|
||||
|
||||
include/ntru_crypto_platform.h:
|
@ -0,0 +1 @@
|
||||
# dummy
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user