instagram-password-encryption
v1.0.1
Published
A module for encrypting passwords for Instagram's web login in order to generate enc_password parameter
Downloads
28
Maintainers
Readme
Instagram Password Encryption Module
This module provides a function to encrypt passwords for the enc_password
parameter used during Instagram's web login process. The encryption process involves several steps including AES-GCM encryption and formatting the encrypted data in a specific way that Instagram's servers expect.
Table of Contents
Installation
To install the module, use npm:
npm install instagram-password-encryption
Function: encryptPassword
The encryptPassword
function encrypts a given password using a combination of provided parameters and internal logic.
Syntax
encryptPassword(password, [version], [keyID], [publicKey])
Parameters
password
(String): The password to be encrypted.version
(String): The version of the encryption algorithm, default is10
.keyID
(String): The key identifier, default is143
.publicKey
(String): The public key used for encryption, default isf219393f2381eab7abd6d20130bfa274cc4ffc8b67988da60abeffc88c1b9b15
.
Returns
A Promise that resolves to the encrypted password string.
Description
The encryptPassword
function uses AES-GCM for encryption. It involves several steps including key generation, encryption, and formatting the result. The function accepts a password and optional parameters for version, keyID, and publicKey. The version, keyID, and publicKey are subject to change and can typically be found on Instagram's login page's source code during updates.
Example Usage
const { encryptPassword } = require('instagram-password-encryption');
encryptPassword('your-password-here').then(encryptedPassword => {
console.log(encryptedPassword);
}).catch(error => {
console.error(error);
});
Note
The provided default values for version
, keyID
, and publicKey
are examples. In a real-world scenario, you should retrieve the current values from Instagram's login page, as they may change periodically.
License
This project is licensed under the MIT License. See the LICENSE file for more details.