Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
@aztec/noir-contracts
Advanced tools
This package contains the source code and the Aztec ABIs for the example contracts used in tests.
This package contains the source code and the Aztec ABIs for the example contracts used in tests.
Please note that any example contract set out herein is provided solely for informational purposes only and does not constitute any inducement to use or deploy. Any implementation of any such contract with an interface or any other infrastructure should be used in accordance with applicable laws and regulations.
An essential tool for managing noir versions is noirup.
curl -L https://raw.githubusercontent.com/noir-lang/noirup/main/install | bash
Currently we all work from a single aztec
tagged noir release. This release updates independently from noir's regular cadence to allow us to rapidly prototype new features.
It has prebuilt binaries and is super easy to install using noirup
curl -L https://raw.githubusercontent.com/noir-lang/noirup/main/install | bash
aztec
tagged nargo
noirup -v aztec
Install noirup
curl -L https://raw.githubusercontent.com/noir-lang/noirup/main/install | bash
Nix is already globally installed but path to this installation needs to be added in $HOME/.zshenv so correct configuration can be found by VSCode, do so with:
echo -e '\n# Nix path set globally\nexport PATH="$HOME/.nix-profile/bin:/nix/var/nix/profiles/default/bin:$PATH"' >> $HOME/.zshenv
Enable nix flake command in ~/.config/nix/nix.conf with commands:
mkdir -p $HOME/.config/nix && echo -e '\nexperimental-features = nix-command\nextra-experimental-features = flakes' >> $HOME/.config/nix/nix.conf
Install direnv into your Nix profile by running:
nix profile install nixpkgs#direnv
Add direnv to your shell following their guide
echo -e '\n# Adds direnv initialization\neval "$(direnv hook zsh)"' >> $HOME/.zshenv
VSCode needs to be resterted so direnv plugin can notice env changes with:
kill -9 ps aux | grep $(whoami)/.vscode-server | awk '{print $2}'
Restart shell
Clone noir repo:
git clone https://github.com/noir-lang/noir.git
Checkout your target noir branch
cd noir
git checkout <branch>
Enable direnv
direnv allow
Restart shell
Go to the noir dir and install Noir:
cd noir
noirup -p ./
In the aztec-packages repository, go to the directory yarn-project/noir-contracts
Use the noir:build:all
script to compile the contracts you want and prepare the ABI for consumption
yarn noir:build:all
Alternatively you can run yarn noir:build CONTRACT1 CONTRACT2...
to build a subset of contracts:
yarn noir:build private_token public_token
To view compilation output, including errors, run with the VERBOSE=1
flag:
VERBOSE=1 yarn noir:build private_token public_token
Go to src/contracts
folder.
Create a new package whose name has to end with _contract. E.g.:
nargo new example_contract
Add the aztec dependency to nargo.toml
:
[package]
authors = [""]
compiler_version = "0.7.1"
[dependencies]
aztec = { path = "../../../../noir-libs/noir-aztec" }
Replace the content of the generated example_contract/src/main.nr
file with your contract code.
Go to noir-contracts
root folder and run yarn noir:build example
to compile the contract.
Export the abi in src/artifacts/index.ts
to be able to use the contract in the rest of the project:
import ExampleContractJson from './example_contract.json' assert { type: 'json' };
export const ExampleContractAbi = ExampleContractJson as ContractAbi;
???
Profit.
FAQs
This package contains the source code and the Aztec ABIs for the example contracts used in tests.
We found that @aztec/noir-contracts demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 6 open source maintainers 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
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.