Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
131 commits
Select commit Hold shift + click to select a range
2eb9aa5
Update links, emails and PegaSys references (#325)
timbeiko Sep 8, 2020
d9c3db9
metrics endpoint (#328)
jframe Sep 11, 2020
418b106
Ensure txns are handled in parallel (#331)
rain-on Sep 11, 2020
76dc4e1
Remove access-control-allow-origin header from web3provider response …
rain-on Sep 22, 2020
419e559
Add eth_signTransaction endpoint (#336)
mkrielza Oct 1, 2020
f4c57f9
adding in quorumengineering as the new namespace and pegasyseng as th…
joshuafernandes Oct 6, 2020
7f2e975
updates for circle (#339)
joshuafernandes Oct 8, 2020
17e0eb2
adding in docker contexts (#340)
joshuafernandes Oct 12, 2020
2825600
fixed typo (#341)
macfarla Oct 15, 2020
0d8690d
updating docker namespace (#342)
joshuafernandes Oct 22, 2020
694af4b
Update changelog for 20.10.0 (#343)
rain-on Oct 22, 2020
29b640d
20.10.0 release (#344)
rain-on Oct 22, 2020
4a55878
Update version to 20.10.1-SNAPSHOT (#345)
rain-on Oct 22, 2020
caf7603
Improve error message if the http server fails to start (#347)
jframe Jan 8, 2021
8b9414d
update links to consensys.net (#348)
macfarla Jan 27, 2021
d13f083
added GoQuorum private transaction type (#349)
macfarla Feb 16, 2021
329af9a
added changelog for 21.1 (#350)
macfarla Feb 16, 2021
59d943f
Added GoQuorum private transaction serializer (#352)
macfarla Feb 19, 2021
8409aef
Updating CI and gradle build to upload to cloudsmith (#353)
usmansaleem Feb 22, 2021
2b45667
Update changelog for 21.2.0 (#354)
usmansaleem Feb 23, 2021
c9070bb
Fixing version in CHANGELOG for release 21.1.0 (#355)
usmansaleem Feb 23, 2021
6e30f44
21.1.0 release (#356)
usmansaleem Feb 23, 2021
87644e1
Prepare for version 21.1.1-SNAPSHOT (#357)
usmansaleem Feb 23, 2021
0dd7d1e
Resolve and publish to cloudsmith (#359)
usmansaleem Mar 8, 2021
53e6ec5
Upgrade besu metrics library (#360)
usmansaleem Mar 9, 2021
2c78c84
Support git tag based release (#363)
usmansaleem Mar 11, 2021
866cf3a
Updating latest Besu release to use with AT (#361)
usmansaleem Mar 12, 2021
3645eba
Enable tag build in circleci config (#364)
usmansaleem Mar 13, 2021
224a15a
fixing NONCE_TOO_LOW retries and adding retries for ETH_SEND_TX_REPLA…
pinges May 11, 2021
4a42407
Upgrade signers library version to 1.0.17 (#370)
usmansaleem May 25, 2021
6863bc1
Updated eth_signTransaction to handle with GoQuorum transactions (#369)
mark-terry May 28, 2021
9bef2e5
Update changelog (#373)
jframe May 31, 2021
bcf2fa3
nonce retry if known transaction (#374)
macfarla May 31, 2021
b490bbb
update changelog (#376)
jframe May 31, 2021
e3ebc9d
Added validation for GoQuorum transactions with value. (#377)
mark-terry Jun 10, 2021
84d6733
increase the timeouts for some tests (#379)
pinges Jun 16, 2021
57ee908
Update web3j to latest version for fix to handle large chainids in ei…
jframe Aug 5, 2021
7281280
Publish to consensys/ethsigner docker namespace and tidy up old confi…
siladu Sep 15, 2021
3c6882a
Upgrade signers to 1.0.19 (#386)
siladu Sep 27, 2021
9fdc4c3
Update various gradle plugins (#388)
usmansaleem Oct 8, 2021
da865f8
Update discord channel to new ethsigner channel (#394)
jframe Nov 8, 2021
a966f55
eth_sign signing of hex data (#392)
usmansaleem Nov 9, 2021
c240ba0
Use Eth1 SECP Address as Signer Identifier to load signer on demand (…
usmansaleem Nov 11, 2021
959bfb3
Prepare for 21.10.0 release (#389)
siladu Nov 12, 2021
8947bf4
Upgrade gradle version to 7.3 support Java 17 compilation (#396)
usmansaleem Nov 15, 2021
3bead24
Setting up Sonarcloud through GH actions (#398)
lucassaldanha Nov 22, 2021
a48d8ca
Remove GH action (#402)
lucassaldanha Nov 23, 2021
32a04d4
adding in docker content trust signing (#404)
joshuafernandes Dec 8, 2021
c5010b6
Upgrade log4j (#405)
ajsutton Dec 10, 2021
d59e1c2
Changelog version 21.10.1 (#407)
usmansaleem Dec 10, 2021
62edf2a
Update log4j to 2.16.0 (#408)
ajsutton Dec 14, 2021
2e8c116
Changelog version 21.10.2 (#409)
usmansaleem Dec 15, 2021
5d2c54b
Update log4j to 2.17.0 (#410)
ajsutton Dec 19, 2021
497a194
Signers update (#411)
lucassaldanha Dec 20, 2021
247c7ca
log4j version update to 2.17.1 (#413)
usmansaleem Jan 4, 2022
62cf033
Create codeql-analysis.yml (#414)
joshuafernandes Jan 12, 2022
28dd155
Create codeql-config.yml (#416)
joshuafernandes Jan 13, 2022
65b8c66
Update codeql-analysis.yml (#424)
cdivitotawela Jan 19, 2022
a6052bc
Create shiftleft-analysis.yml (#422)
joshuafernandes Jan 19, 2022
833b7de
Update shiftleft-analysis.yml
joshuafernandes Jan 19, 2022
71ae9b9
Update various dependencies (#419)
usmansaleem Jan 20, 2022
9630934
Add netcat package in Dockerfile (#428)
usmansaleem Jan 23, 2022
f1da298
21.10.9 Changelog (#429)
usmansaleem Jan 23, 2022
da2ac0c
update version of tuweni (#432)
macfarla Feb 2, 2022
4379eb9
jnr-unixsocket excluded from wrong entry (#433)
macfarla Feb 2, 2022
dc1f551
Updated besu to 22.1.0 (#436)
lucassaldanha Feb 16, 2022
4c42aec
Preparing changelog for 22.1.0 (#437)
lucassaldanha Feb 17, 2022
825636d
Adding trivy scans to the repo (#426)
joshuafernandes Feb 24, 2022
018fe04
Updated default port to 9546
alvonellos Feb 20, 2022
df4f0dd
Update changelog
usmansaleem Mar 6, 2022
f44b0ef
updating base docker image due to deprecation (#441)
joshuafernandes Mar 9, 2022
62bacdf
Create PR template with documentation section (#445)
rolandtyler Mar 28, 2022
71c85b4
Change Docker image Ubuntu version to 21.10 (#448)
usmansaleem Mar 30, 2022
b17d186
Fix circleci setup_remote_docker (#453)
usmansaleem Mar 30, 2022
e0c0bf2
Update various dependency versions (#451)
usmansaleem Apr 4, 2022
258a001
Release 22.1.3 Changelog (#454)
usmansaleem Apr 5, 2022
e996669
Include netcat in the docker image as netcat isn't included as part o…
jframe Apr 7, 2022
753c6ed
Dependency vulnerability check (#456)
jframe Apr 21, 2022
f065361
pegasys.tech -> consensys.net (#458)
macfarla May 16, 2022
bfd1233
Updated dependency versions (#457)
siladu May 18, 2022
7d68390
Add suppression to CVE-2022-33915 (#463)
gfukushima Jul 5, 2022
2e76099
Remove suppression as the NVD has been updated to remove this false p…
siladu Jul 7, 2022
4f90d1f
Docker image - Update to Ubuntu 22.04 and change permissions of /opt/…
mfolnovic Aug 16, 2022
60118e6
Upgrade besu to latest version (#467)
siladu Aug 23, 2022
ae6e4c6
Update to jackson-databind to address CVE (#469)
jframe Oct 5, 2022
02986a9
Upgrade protobufs to mitigate CVE-2022-3171 (#470)
siladu Oct 10, 2022
85b816d
Disable parallelism for dependencyCheckAggregate to mitigate flakines…
siladu Oct 15, 2022
c6888da
Upgrade reactor-netty-http to mitigate CVE-2022-31684 (#473)
siladu Oct 26, 2022
2fba65a
Update protobuf library to fix CVE-2022-3509 (#476)
jframe Nov 14, 2022
33685b5
[474] Add proxy options to http client to use Ethsigner behind proxy …
germinalo Nov 23, 2022
a53c017
Updating dependencies versions (#479)
usmansaleem Dec 12, 2022
7984f61
Incrase dependency check to use high cvss score (#480)
jframe Dec 19, 2022
02ded9f
Update netty to address CVE-2022-41881 and CVE-2022-41915 (#481)
jframe Jan 4, 2023
56a0ced
Use circle ci context for environment variables needed in ATs (#482)
jframe Jan 5, 2023
d2878a2
Update circle contexts (#483)
jframe Jan 5, 2023
fb10982
Update dependency-check-gradle plugin to 7.4.4 to fix error updating …
jframe Jan 8, 2023
a9e6b1f
Various Dependencies updates (#487)
usmansaleem Jan 23, 2023
9ef461c
Updating dependencies versions (#488)
usmansaleem Feb 14, 2023
8d21cea
Upgrade Vertx to 4.3.8 (#489)
usmansaleem Feb 19, 2023
69afe4e
Docker image - install libssl3 (#491)
usmansaleem Feb 20, 2023
f6c343b
Changelog (#490)
usmansaleem Feb 20, 2023
f557595
Suppress false positive CVE-2022-45688 for json-java (#494)
usmansaleem Feb 28, 2023
e80958e
CI: Fix owasp reported CVE (#497)
usmansaleem Mar 22, 2023
d844f3a
Change nightly scheduled time (#496)
gfukushima Apr 16, 2023
53e60e7
adding trivy nightly scan (#504)
joshuafernandes May 4, 2023
cc546da
Update library dependencies (#509)
jframe Jun 21, 2023
bf6fed0
23.6.0 changelog (#510)
jframe Jun 21, 2023
69223fe
Upgrade netty and exclude old bouncycastle dep to fix CVEs (#511)
siladu Jun 26, 2023
50f5890
Move bouncycastle to implementation level so javadoc can see it (#512)
siladu Jun 26, 2023
a6781cc
Add suppression for disputed CVE-2023-35116 (#513)
siladu Jun 29, 2023
b804688
Update docker to latest LTS (#517)
jframe Jul 25, 2023
b6888db
Override the okhttp dependency to fix CVE-2023-3635 (#519)
jframe Jul 28, 2023
5f57ac3
Update creds for docker dct signer (#520)
siladu Jul 28, 2023
d2f5443
Update hardcoded Azure values (#521)
siladu Jul 28, 2023
72aa797
Run Azure tests on nightly build (#523)
siladu Jul 28, 2023
d0c5ed0
Upgrade grpc library to fix CVE (#524)
gfukushima Aug 21, 2023
3e648f8
Dependency updates and suppressions (#525)
siladu Sep 14, 2023
bafb183
Update README.md (#526)
non-fungible-nelson Sep 19, 2023
d29a07a
Fetch latest libc6 and libc-bin in docker image (#528)
usmansaleem Oct 10, 2023
c787fd8
Fix ethsigner build (#529)
usmansaleem Oct 11, 2023
9d9e01e
Use Java 17 and upgrade Azure and web3j libraries (#530)
usmansaleem Oct 17, 2023
8f02e28
Do not fail gradle javadoc task on javadoc comments warnings (#531)
usmansaleem Oct 18, 2023
cea5614
Override the netty dependency to fix CVE-2023-44487 (#532)
jframe Oct 19, 2023
3105b88
Re-add suppression in for false positive CVE-2023-4586 (#533)
siladu Oct 27, 2023
df7d959
Upgrade reactor-netty-http to fix CVE-2023-34062 (#534)
siladu Nov 17, 2023
f625de5
Dependency check upgrade and suppress FP (#536)
jframe Dec 6, 2023
e0322b8
Update vertx to 4.4.6 and suppress unrelated CVE (#537)
jframe Dec 12, 2023
b3b62a8
remove build slack notification (#538)
jframe Dec 12, 2023
9ede0b4
Update various vulnerabilities suppressions (#539)
usmansaleem Jan 19, 2024
7c0f3ae
Override nimbus-jose-jwt version to avoid CVE-2023-52428 (#540)
usmansaleem Feb 27, 2024
7a2a1d3
Deprecate ethsigner (#542)
jframe Apr 4, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
137 changes: 88 additions & 49 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
---
version: 2.1

orbs:
slack: circleci/slack@3.4.2

executors:
executor_med: # 2cpu, 4G ram
docker:
- image: circleci/openjdk:11.0.4-jdk-stretch
- image: cimg/openjdk:17.0
auth:
username: $DOCKER_USER_RO
password: $DOCKER_PASSWORD_RO
resource_class: medium
working_directory: ~/project
environment:
Expand All @@ -16,21 +16,24 @@ executors:

executor_large: # 4cpu, 8G ram
docker:
- image: circleci/openjdk:11.0.4-jdk-stretch
- image: cimg/openjdk:17.0
auth:
username: $DOCKER_USER_RO
password: $DOCKER_PASSWORD_RO
resource_class: large
working_directory: ~/project
environment:
JAVA_TOOL_OPTIONS: -Xmx4096m
GRADLE_OPTS: -Dorg.gradle.daemon=false -Dorg.gradle.parallel=true -Dorg.gradle.workers.max=4 -Xmx4096m

executor_machine: # 2cpu , 8G ram
machine:
image: ubuntu-1604:201903-01 #Ubuntu 16.04, docker 18.09.3, docker-compose 1.23.1
docker_layer_caching: true
trivy_executor:
docker:
- image: docker:stable-git
auth:
username: $DOCKER_USER_RO
password: $DOCKER_PASSWORD_RO
resource_class: small
working_directory: ~/project
environment:
JAVA_TOOL_OPTIONS: -Xmx4096m
GRADLE_OPTS: -Dorg.gradle.daemon=false -Dorg.gradle.parallel=true -Dorg.gradle.workers.max=2 -Xmx4096m

commands:
prepare:
Expand Down Expand Up @@ -69,25 +72,24 @@ commands:
name: Gather test results
when: always
command: |
FILES=`find . -name reports`
FILES=`find . -name reports -not -path './build/reports'`
for FILE in $FILES
do
MODULE=`echo "$FILE" | sed -e 's@./\(.*\)/build/reports@\1@'`
TARGET="build/test-reports/$MODULE"
SOURCE="${FILE}/tests/test"
mkdir -p "$TARGET"
cp -rf ${FILE}/*/* "$TARGET"
if [[ -d "$SOURCE" ]]; then
cp -rf "$SOURCE" "$TARGET"
fi
done
if [[ -f 'build/reports/dependency-check-report.html' ]]; then
cp 'build/reports/dependency-check-report.html' 'build/test-reports'
fi
- store_artifacts:
path: build/test-reports
destination: test-reports

notify:
description: "Notify Slack"
steps:
- slack/status:
fail_only: true
only_for_branches: 'master'

jobs:
build:
executor: executor_large
Expand All @@ -97,6 +99,11 @@ jobs:
name: Build
command: |
./gradlew --no-daemon --parallel build
- run:
name: Dependency vulnerability scan
no_output_timeout: 40m
command: |
./gradlew --no-daemon -Dorg.gradle.parallel=false dependencyCheckAggregate
- run:
name: Test
no_output_timeout: 20m
Expand All @@ -107,7 +114,6 @@ jobs:
no_output_timeout: 20m
command: |
./gradlew --no-daemon --parallel integrationTest --info
- notify
- capture_test_results
- capture_test_reports
- save_cache:
Expand All @@ -130,7 +136,6 @@ jobs:
no_output_timeout: 20m
command: |
./gradlew --no-daemon --parallel acceptanceTest
- notify
- capture_test_results
- capture_test_reports

Expand All @@ -141,10 +146,6 @@ jobs:
- setup_remote_docker
- attach_workspace:
at: ~/project
- run:
name: hadoLint
command: |
docker run --rm -i hadolint/hadolint < docker/Dockerfile
- run:
name: build image
command: |
Expand All @@ -153,21 +154,24 @@ jobs:
name: test image
command: |
mkdir -p docker/reports
./gradlew --no-daemon testDocker
- notify
./gradlew --no-daemon testDocker

publish:
executor: executor_med
steps:
- prepare
- run:
name: Install Python3
command: |
sudo apt update
sudo apt install python3 python3-pip python3-venv
- attach_workspace:
at: ~/project
- run:
name: Publish
command: |
./gradlew --no-daemon --parallel bintrayUpload
- notify

./gradlew --no-daemon --parallel cloudSmithUpload publish

publishDocker:
executor: executor_med
steps:
Expand All @@ -178,50 +182,85 @@ jobs:
- run:
name: Publish Docker
command: |
docker login --username "${DOCKER_USER}" --password "${DOCKER_PASSWORD}"
docker login --username "${DOCKER_USER_RW}" --password "${DOCKER_PASSWORD_RW}"

# dct signing setup
mkdir -p $HOME/.docker/trust/private
echo $DCT_KEY | base64 --decode > $HOME/.docker/trust/private/$DCT_HASH.key
chmod 600 $HOME/.docker/trust/private/$DCT_HASH.key
docker trust key load $HOME/.docker/trust/private/$DCT_HASH.key --name ecosystem

./gradlew --no-daemon --parallel "-Pbranch=${CIRCLE_BRANCH}" dockerUpload
- notify


dockerScan:
executor: trivy_executor
steps:
- prepare
- setup_remote_docker:
docker_layer_caching: false
- run:
name: Install trivy
command: |
apk add --update-cache --upgrade curl bash
curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/main/contrib/install.sh | sh -s -- -b /usr/local/bin
- run:
name: Scan with trivy
shell: /bin/sh
command: |
trivy -q image --exit-code 1 --no-progress --severity HIGH,CRITICAL --ignorefile "gradle/trivyignore.txt" --timeout 10m "consensys/ethsigner:develop"

workflows:
version: 2
nightly:
triggers:
- schedule:
cron: "0 11 * * *"
filters:
branches:
only:
- master
jobs:
- build
- acceptanceTests:
requires:
- build
default:
jobs:
- build
- build:
context:
- protocols-dockerhub
filters:
tags: &filters-release-tags
only: /^[0-9]+\.[0-9]+\.[0-9]+(-[a-zA-Z0-9]+)?/
- acceptanceTests:
requires:
- build
context:
- protocols-dockerhub
- protocols-signers
filters:
tags:
<<: *filters-release-tags
- buildDocker:
requires:
- build
context:
- protocols-dockerhub
filters:
tags:
<<: *filters-release-tags
- publish:
filters:
branches:
only:
- master
- /^release-.*/
tags:
<<: *filters-release-tags
requires:
- build
- acceptanceTests
context:
- protocols-dockerhub
- protocols-cloudsmith
- publishDocker:
filters:
branches:
only:
- master
- /^release-.*/
tags:
<<: *filters-release-tags
requires:
- build
- acceptanceTests
- buildDocker
context:
- protocols-dockerhub
16 changes: 16 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<!-- Thanks for sending a pull request! Please check out our contribution guidelines: -->
<!-- https://github.com/ConsenSys/ethsigner/blob/master/CONTRIBUTING.md -->

## PR Description

## Fixed Issue(s)
<!-- Please link to fixed issue(s) here using format: fixes #<issue number> -->
<!-- Example: "fixes #2" -->

## Documentation

- [ ] I thought about documentation and added the `doc-change-required` label to this PR if updates are required.

## Changelog

- [ ] I thought about adding a changelog entry, and added one if I deemed necessary.
70 changes: 70 additions & 0 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name: "CodeQL"

on:
push:
branches: [ master ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ master ]
schedule:
- cron: '0 19 * * 0'

jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write

strategy:
fail-fast: false
matrix:
language: [ 'java' ]
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
# Learn more about CodeQL language support at https://git.io/codeql-language-support

steps:
- name: Checkout repository
uses: actions/checkout@v3

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
queries: security-and-quality

# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v2

# ℹ️ Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl

# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
# and modify them (or add more) to build your code if your project
# uses a compiled language

#- run: |
# make bootstrap
# make release

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
43 changes: 43 additions & 0 deletions .github/workflows/trivy-analysis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.

name: build

on:
push:
branches: [ master ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ master ]
schedule:
- cron: '0 19 * * 0'

jobs:
build:
name: Build
runs-on: "ubuntu-20.04"
steps:
- name: Checkout code
uses: actions/checkout@v3
- uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '17'
- name: Build an image from Dockerfile
run: |
./gradlew --no-daemon --parallel build -x test distDocker
- name: Run Trivy vulnerability scanner
uses: aquasecurity/trivy-action@2a2157eb22c08c9a1fac99263430307b8d1bc7a2
with:
image-ref: 'consensys/ethsigner:develop'
format: 'template'
template: '@/contrib/sarif.tpl'
output: 'trivy-results.sarif'
severity: 'CRITICAL,HIGH'

- name: Upload Trivy scan results to GitHub Security tab
uses: github/codeql-action/upload-sarif@v1
with:
sarif_file: 'trivy-results.sarif'
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -26,3 +26,4 @@ tmp/
build/
out/
docker/reports/*
.vscode
Loading