
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
Encrypt part of your text file, powered by [TweetNaCl.js](https://tweetnacl.js.org/).
Encrypt part of your text file, powered by TweetNaCl.js.
Warning: This package is unrelated to the end-to-end encryption SDK Seald.io. If you are looking for the Seald.io SDK, please install the @seald-io/sdk package.
I have a .env.staging file.
AWS_ACCESS_KEY_ID=AKIAYVP4CIPPALMU4BWD
AWS_SECRET_ACCESS_KEY=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
I want to encrypt the value of AWS_SECRET_ACCESS_KEY with these desired qualities:
I went to https://tweetnacl.js.org/#/box and generated a secret key along with a public key:
NIx+f8paZzMcofxgzlNsnApvGhuVzLTloHfFL8MwiPs=r8+GVn7boCsLU9MkVOO7b/mDg99MSqjuxNs9OapGp3Q=Then, I use the public key to encrypt the AWS secret access key:
// Run this in Node.js REPL
console.log(
require('seald').seal(
'n2ErjptdPdQAnHNI9F50zyGAsE6NAj+w4SpzTJ7x',
'r8+GVn7boCsLU9MkVOO7b/mDg99MSqjuxNs9OapGp3Q=',
),
)
// -> (SEALD;r8+GVn7boCsLU9MkVOO7b/mDg99MSqjuxNs9OapGp3Q=;WAwRB4BMmL+QcC608kIq8iLBR59hh+RDtS4N3SdEH0k=;8I1leOJ+jE3KKoRroq1CQkFEil4zL6PG;70jNalbCAmvDhIYJAZl2LgJdtCrJZJmKf0kIwRUqYw8gBS7A3J9CNqL7EfbvHlpEVWww6T8CLZY=)
It returns a string that I can now use in my .env.staging.seald file:
AWS_ACCESS_KEY_ID=AKIAYVP4CIPPALMU4BWD
AWS_SECRET_ACCESS_KEY=(SEALD;r8+GVn7boCsLU9MkVOO7b/mDg99MSqjuxNs9OapGp3Q=;WAwRB4BMmL+QcC608kIq8iLBR59hh+RDtS4N3SdEH0k=;8I1leOJ+jE3KKoRroq1CQkFEil4zL6PG;70jNalbCAmvDhIYJAZl2LgJdtCrJZJmKf0kIwRUqYw8gBS7A3J9CNqL7EfbvHlpEVWww6T8CLZY=)
On the CI, I can unseal it with this script:
import fs from 'fs'
import { unseal } from 'seald'
// Usually I would load the key from your CI’s secret store or environment variable.
const keys = {
'r8+GVn7boCsLU9MkVOO7b/mDg99MSqjuxNs9OapGp3Q=':
'NIx+f8paZzMcofxgzlNsnApvGhuVzLTloHfFL8MwiPs=',
}
const sealed = fs.readFileSync('.env.staging.seald', 'utf8')
const unsealed = unseal(sealed, keys)
fs.writeFileSync('.env.staging', unsealed)
The sealed data has this syntax:
(SEALD;PublicKey;SealerPublicKey;Nonce;Payload)
FAQs
Encrypt part of your text file, powered by [TweetNaCl.js](https://tweetnacl.js.org/).
The npm package seald receives a total of 13 weekly downloads. As such, seald popularity was classified as not popular.
We found that seald demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.