Opens in a new windowOpens an external websiteOpens an external website in a new window
This website utilizes technologies such as cookies to enable essential site functionality, as well as for analytics, personalization, and targeted advertising purposes. To learn more, view the following link: Cookie Policy
CTF for ビギナーズのバイナリ講習で使用した資料です。
講習に使用したファイルは、以下のリンク先にあります。
https://onedrive.live.com/redir?resid=5EC2715BAF0C5F2B!10056&authkey=!ANE0wqC_trouhy0&ithint=folder%2czip
CTF for ビギナーズのバイナリ講習で使用した資料です。
講習に使用したファイルは、以下のリンク先にあります。
https://onedrive.live.com/redir?resid=5EC2715BAF0C5F2B!10056&authkey=!ANE0wqC_trouhy0&ithint=folder%2czip
The document summarizes key concepts in homomorphic encryption and secure multiparty computation including:
1) Homomorphic encryption allows computations to be performed directly on encrypted data without decrypting it first, such as adding or multiplying encrypted values.
2) Secure multiparty computation allows multiple parties to jointly compute a function over their private inputs while keeping those inputs private.
3) Secret sharing techniques like Shamir's secret sharing and verifiable secret sharing (VSS) allow a secret to be divided into shares and reconstructed from a subset of shares.
1) TLS 1.3 is the latest and most secure version of the TLS protocol for encrypting HTTP communications. It improves performance, efficiency, security, and supports newer encryption algorithms and key derivation functions.
2) TLS 1.3 reduces the number of exchanges needed before encrypted communication begins from three exchanges to one. It also reduces the number of rounds needed for the handshake.
3) TLS 1.3 bans insecure encryption algorithms and hashes like MD5, SHA-1, 3DES, and RC4 that were still supported in previous versions for backward compatibility. It adds newer and more secure algorithms like ChaCha20 and EdDSA.
The document summarizes cryptography techniques such as hashing functions, MAC, digital signatures, and FIDO authentication. It discusses SHA-2 and SHA-3 hashing standards, how MAC provides data integrity while signatures provide non-repudiation. ECDSA is introduced as an elliptic curve digital signature algorithm. FIDO aims to standardize multi-factor authentication using authentication devices and attestation signatures.
The document summarizes topics related to cryptography including RSA encryption, elliptic curve encryption, man-in-the-middle attacks, and hash functions. It discusses the basic principles of RSA encryption and key generation. It also explains elliptic curve cryptography, including elliptic curve addition and the difficulty of solving elliptic curve discrete logarithm problems. Additionally, it covers man-in-the-middle attacks on public key encryption and key agreement protocols. Finally, it provides an overview of hash functions and their properties like one-wayness and collision resistance.
1. The document discusses public key cryptography concepts like Diffie-Hellman key exchange, finite fields, discrete logarithm problems, key encapsulation mechanisms, and the security properties of IND-CCA security.
2. It provides examples of finite field arithmetic and constructions of finite fields and explains how fields can be extended.
3. The document compares public key cryptography and common key cryptography, noting that public key cryptography allows each user to have a single private key regardless of the number of users.
This document summarizes an overview of symmetric encryption algorithms and modes, including one-time pads, stream ciphers, block ciphers like AES, and encryption modes like ECB, CBC, CTR, and XTS. It discusses the properties, advantages, and disadvantages of each. It also covers topics like AES-NI instructions, padding oracle attacks, parallelization of encryption/decryption, and attacks like plaintext recovery from ciphertext manipulation.
The document discusses optimization techniques for deep learning frameworks on Intel CPUs and Fugaku aimed architectures. It introduces oneDNN, a performance library for deep learning operations on Intel CPUs. It discusses issues with C++ implementation, and how just-in-time assembly generation using Xbyak can address these issues by generating optimal code depending on parameters. It also introduces Xbyak_aarch64 for generating optimized code for Fugaku's Scalable Vector Extension instructions.
The document discusses implementing multiple-precision arithmetic in WebAssembly. It describes how carry operations are important for multiple-precision addition and multiplication but are not supported natively in WebAssembly. It proposes some strategies for emulating carry operations in WebAssembly using instructions like add, lt_u, and select to add multiples of 64-bit elements with carry propagation. Benchmark results show that 32-bit element processing can outperform 64-bit element processing for some operations like multiplication in WebAssembly. Overall, implementing efficient multiple-precision arithmetic in WebAssembly requires emulating carry operations that are supported directly in x64 processors.
This document summarizes an improved protocol for secure two-party computation using additive homomorphic encryption. The proposed protocol allows a server to compute an encrypted function f(m) on an encrypted input Enc(m), without learning the plaintext value m, with the help of a client who holds the decryption key. The improvement reduces the protocol to 1 round of communication, compared to 2 rounds previously, and reduces the communication size by a factor of 40-130x. It achieves this by having the client use zero-knowledge proofs to convince the server that it correctly generated the output encryption Enc'(f(m)) from the input encryption Enc(m), without revealing any plaintext values.