Linux v69820.1blu.de 4.15.0 #1 SMP Mon Sep 30 15:36:27 MSK 2024 x86_64
Apache/2.4.58
Server IP : 195.90.215.149 & Your IP : 216.73.217.80
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
include /
nodejs /
src /
crypto /
Delete
Unzip
Name
Size
Permission
Date
Action
crypto_aes.h
3.02
KB
-rw-r--r--
2024-02-13 21:40
crypto_bio.h
6.18
KB
-rw-r--r--
2024-02-13 21:40
crypto_cipher.h
9.07
KB
-rw-r--r--
2024-02-13 21:40
crypto_clienthello-inl.h
2.6
KB
-rw-r--r--
2024-02-13 21:40
crypto_clienthello.h
4.16
KB
-rw-r--r--
2024-02-13 21:40
crypto_common.h
4.35
KB
-rw-r--r--
2024-02-13 21:40
crypto_context.h
6.21
KB
-rw-r--r--
2024-02-13 21:40
crypto_dh.h
5.04
KB
-rw-r--r--
2024-02-13 21:40
crypto_dsa.h
2.19
KB
-rw-r--r--
2024-02-13 21:40
crypto_ec.h
5.1
KB
-rw-r--r--
2024-02-13 21:40
crypto_hash.h
2.46
KB
-rw-r--r--
2024-02-13 21:40
crypto_hkdf.h
1.56
KB
-rw-r--r--
2024-02-13 21:40
crypto_hmac.h
2.55
KB
-rw-r--r--
2024-02-13 21:40
crypto_keygen.h
8.99
KB
-rw-r--r--
2024-02-13 21:40
crypto_keys.h
12.28
KB
-rw-r--r--
2024-02-13 21:40
crypto_pbkdf2.h
2.01
KB
-rw-r--r--
2024-02-13 21:40
crypto_random.h
3.58
KB
-rw-r--r--
2024-02-13 21:40
crypto_rsa.h
3.92
KB
-rw-r--r--
2024-02-13 21:40
crypto_scrypt.h
2.24
KB
-rw-r--r--
2024-02-13 21:40
crypto_sig.h
4.47
KB
-rw-r--r--
2024-02-13 21:40
crypto_spkac.h
538
B
-rw-r--r--
2024-02-13 21:40
crypto_timing.h
525
B
-rw-r--r--
2024-02-13 21:40
crypto_tls.h
12.04
KB
-rw-r--r--
2024-02-13 21:40
crypto_util.h
25.27
KB
-rw-r--r--
2024-02-13 21:40
crypto_x509.h
4.77
KB
-rw-r--r--
2024-02-13 21:40
Save
Rename
#ifndef SRC_CRYPTO_CRYPTO_DH_H_ #define SRC_CRYPTO_CRYPTO_DH_H_ #if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS #include "crypto/crypto_keys.h" #include "crypto/crypto_keygen.h" #include "crypto/crypto_util.h" #include "env.h" #include "memory_tracker.h" #include "v8.h" #include <variant> namespace node { namespace crypto { class DiffieHellman : public BaseObject { public: static void Initialize(Environment* env, v8::Local<v8::Object> target); static void RegisterExternalReferences(ExternalReferenceRegistry* registry); bool Init(int primeLength, int g); bool Init(BignumPointer&& bn_p, int g); bool Init(const char* p, int p_len, int g); bool Init(const char* p, int p_len, const char* g, int g_len); static void Stateless(const v8::FunctionCallbackInfo<v8::Value>& args); protected: static void DiffieHellmanGroup( const v8::FunctionCallbackInfo<v8::Value>& args); static void New(const v8::FunctionCallbackInfo<v8::Value>& args); static void GenerateKeys(const v8::FunctionCallbackInfo<v8::Value>& args); static void GetPrime(const v8::FunctionCallbackInfo<v8::Value>& args); static void GetGenerator(const v8::FunctionCallbackInfo<v8::Value>& args); static void GetPublicKey(const v8::FunctionCallbackInfo<v8::Value>& args); static void GetPrivateKey(const v8::FunctionCallbackInfo<v8::Value>& args); static void ComputeSecret(const v8::FunctionCallbackInfo<v8::Value>& args); static void SetPublicKey(const v8::FunctionCallbackInfo<v8::Value>& args); static void SetPrivateKey(const v8::FunctionCallbackInfo<v8::Value>& args); static void VerifyErrorGetter( const v8::FunctionCallbackInfo<v8::Value>& args); DiffieHellman(Environment* env, v8::Local<v8::Object> wrap); void MemoryInfo(MemoryTracker* tracker) const override; SET_MEMORY_INFO_NAME(DiffieHellman) SET_SELF_SIZE(DiffieHellman) private: static void GetField(const v8::FunctionCallbackInfo<v8::Value>& args, const BIGNUM* (*get_field)(const DH*), const char* err_if_null); static void SetKey(const v8::FunctionCallbackInfo<v8::Value>& args, int (*set_field)(DH*, BIGNUM*), const char* what); bool VerifyContext(); int verifyError_; DHPointer dh_; }; struct DhKeyPairParams final : public MemoryRetainer { // Diffie-Hellman can either generate keys using a fixed prime, or by first // generating a random prime of a given size (in bits). Only one of both // options may be specified. std::variant<BignumPointer, int> prime; unsigned int generator; SET_NO_MEMORY_INFO() SET_MEMORY_INFO_NAME(DhKeyPairParams) SET_SELF_SIZE(DhKeyPairParams) }; using DhKeyPairGenConfig = KeyPairGenConfig<DhKeyPairParams>; struct DhKeyGenTraits final { using AdditionalParameters = DhKeyPairGenConfig; static constexpr const char* JobName = "DhKeyPairGenJob"; static EVPKeyCtxPointer Setup(DhKeyPairGenConfig* params); static v8::Maybe<bool> AdditionalConfig( CryptoJobMode mode, const v8::FunctionCallbackInfo<v8::Value>& args, unsigned int* offset, DhKeyPairGenConfig* params); }; using DHKeyPairGenJob = KeyGenJob<KeyPairGenTraits<DhKeyGenTraits>>; struct DHKeyExportConfig final : public MemoryRetainer { SET_NO_MEMORY_INFO() SET_MEMORY_INFO_NAME(DHKeyExportConfig) SET_SELF_SIZE(DHKeyExportConfig) }; struct DHKeyExportTraits final { static constexpr const char* JobName = "DHKeyExportJob"; using AdditionalParameters = DHKeyExportConfig; static v8::Maybe<bool> AdditionalConfig( const v8::FunctionCallbackInfo<v8::Value>& args, unsigned int offset, DHKeyExportConfig* config); static WebCryptoKeyExportStatus DoExport( std::shared_ptr<KeyObjectData> key_data, WebCryptoKeyFormat format, const DHKeyExportConfig& params, ByteSource* out); }; using DHKeyExportJob = KeyExportJob<DHKeyExportTraits>; struct DHBitsConfig final : public MemoryRetainer { std::shared_ptr<KeyObjectData> private_key; std::shared_ptr<KeyObjectData> public_key; SET_NO_MEMORY_INFO() SET_MEMORY_INFO_NAME(DHBitsConfig) SET_SELF_SIZE(DHBitsConfig) }; struct DHBitsTraits final { using AdditionalParameters = DHBitsConfig; static constexpr const char* JobName = "DHBitsJob"; static constexpr AsyncWrap::ProviderType Provider = AsyncWrap::PROVIDER_DERIVEBITSREQUEST; static v8::Maybe<bool> AdditionalConfig( CryptoJobMode mode, const v8::FunctionCallbackInfo<v8::Value>& args, unsigned int offset, DHBitsConfig* params); static bool DeriveBits( Environment* env, const DHBitsConfig& params, ByteSource* out_); static v8::Maybe<bool> EncodeOutput( Environment* env, const DHBitsConfig& params, ByteSource* out, v8::Local<v8::Value>* result); }; using DHBitsJob = DeriveBitsJob<DHBitsTraits>; v8::Maybe<bool> GetDhKeyDetail( Environment* env, std::shared_ptr<KeyObjectData> key, v8::Local<v8::Object> target); } // namespace crypto } // namespace node #endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS #endif // SRC_CRYPTO_CRYPTO_DH_H_