Skip to content

Commit 9b9fe7a

Browse files
authored
Merge branch 'master' into stackaccount1-master
2 parents 56bb05f + 582d52b commit 9b9fe7a

File tree

8 files changed

+185
-34
lines changed

8 files changed

+185
-34
lines changed

README.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,3 +85,30 @@ Configuration in `cspell.json`:
8585
]
8686
}
8787
```
88+
89+
---
90+
91+
# zkSync Ecosystem
92+
93+
- [**Start building with zkSync v2 🚀**](https://portal.zksync.io)
94+
- [Integration Docs](https://zksync.io/dev)
95+
- [Available API & protocols](https://zksync.io/api/)
96+
- [zkWallet](https://wallet.zksync.io/)
97+
- [zkMint](https://mint.zksync.dev/)
98+
- [Alternative Withdrawal](https://withdraw.zksync.io/)
99+
- [zkScan](https://zkscan.io/)
100+
- [’out-of-gas’ issue solver ](https://withdraw.zksync.io/)
101+
102+
---
103+
104+
- [Matter Labs: creators of the zkSync](https://matter-labs.io)
105+
- [zkSync Homepage](https://zksync.io)
106+
107+
---
108+
> BTW, we're hiring: [See open positions](https://matter-labs.io/#jobs)
109+
110+
## License
111+
112+
zkWallet is distributed under the terms of both the MIT license, and the Apache License (v.2.0).
113+
114+
See [LICENSE-APACHE](LICENSE-APACHE), [LICENSE-MIT](LICENSE-MIT) for details.

dist.zip

1.89 MB
Binary file not shown.

docs/.vuepress/config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -279,7 +279,7 @@ export = defineConfig(_ctx => {
279279
},
280280
extraWatchFiles: ['.vuepress/config/**'],
281281
head: [
282-
['script', { src: '/hack.js', defer: true }, ''],
282+
['script', { src: '/hack.js', defer: "defer" }, ''],
283283
['link', { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }],
284284
['link', { rel: 'apple-touch-icon', sizes: '57x57', type: 'image/x-icon', href: '/apple-icon-57x57.png' }],
285285
['link', { rel: 'apple-touch-icon', sizes: '60x60', type: 'image/x-icon', href: '/apple-icon-60x60.png' }],
1010 KB
Binary file not shown.

docs/.vuepress/public/hack.js

Lines changed: 45 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,52 @@
1-
window.onload = () => {
2-
// Script #1: Processing scroll-to-hash
3-
window.onhashchange = (hashEvent) => {
4-
if (hashEvent.oldURL !== hashEvent.newURL && hashEvent.isTrusted && window.location.hash) {
5-
hashEvent.stopPropagation();
6-
const element = document.getElementById(window.location.hash.slice(1));
1+
let lastHash = "";
2+
3+
function locationHashChanged (event) {
4+
try {
5+
if (!event || !event.isTrusted) {
6+
return;
7+
}
8+
const currentLocation = (event.path && event.path.length > 0 && event.path[0] && event.path[0].location) ? event.path[0].location : window.location;
9+
if (currentLocation && currentLocation.hash !== "" && currentLocation.hash !== lastHash) {
10+
const element = document.querySelector(currentLocation.hash);
711
if (element) {
8-
element.scrollIntoView({ behavior: "scrollBehavior" in document.documentElement.style ? "smooth" : undefined, block: "end", inline: "nearest" });
12+
if (event.hasOwnProperty('stopPropagation')) {
13+
event.stopPropagation();
14+
}
15+
if (element.hasOwnProperty('scrollIntoViewIfNeeded')) {
16+
element.scrollIntoViewIfNeeded(true);
17+
} else {
18+
element.scrollIntoView({ behavior: 'smooth', block: 'start', inline: 'start' });
19+
}
20+
return false;
921
}
10-
return false;
22+
lastHash = currentLocation.hash;
1123
}
12-
};
24+
} catch (err) {
25+
console.debug(err);
26+
}
27+
}
28+
29+
window.addEventListener('loadeddata', (event) => {
30+
locationHashChanged(event);
31+
});
32+
33+
document.addEventListener('readystatechange', (event) => {
34+
locationHashChanged(event);
35+
});
36+
37+
// Script #1: Processing scroll-to-hash
38+
window.addEventListener('hashchange', (event) => {
39+
locationHashChanged(event);
40+
});
1341

14-
// Script #2: Changing logo & home-link behaviour
15-
const singleElement = document.querySelector("a.home-link");
16-
const newHost = "https://zksync.io";
42+
// Script #2: Changing logo & home-link behaviour
43+
window.addEventListener('DOMContentLoaded', (event) => {
44+
locationHashChanged(event);
45+
const singleElement = document.querySelector('a.home-link');
46+
const newHost = 'https://zksync.io';
1747

1848
if (singleElement) {
19-
singleElement.setAttribute("href", newHost);
20-
singleElement.setAttribute("target", "_blank");
49+
singleElement.setAttribute('href', newHost);
50+
singleElement.setAttribute('target', '_blank');
2151
}
22-
};
52+
});

docs/dev/security/bug-bounty.md

Lines changed: 46 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,56 @@
22

33
[[toc]]
44

5-
## ImmuneFi
5+
## Scope
66

7-
We have a bug bounty program at ImmuneFi that is focused on our smart contracts, ZK-SNARK circuits, web and app. Before submitting a bug, please read the [platform rules](https://immunefi.com/rules/) and description of the [bounty program](https://immunefi.com/bounty/zksync/).
7+
Issues that can lead to substantial loss of money, critical bugs like a broken live-ness condition, blocking upgrade system, irreversible loss of
8+
funds, or enforced exodus mode.
9+
10+
## Assumptions
11+
12+
In order to be eligible for the bug bounty, a bug should adhere to the security assumptions of zkSync. You can read more
13+
about them [here](https://github.com/matter-labs/zksync/blob/master/docs/protocol.md#assumptions).
14+
15+
## Disclosure Policy
16+
17+
Let us know as soon as possible upon discovery of a potential security issue.
18+
19+
Provide us a reasonable amount of time to resolve the issue **before any disclosure** **to the public or a third
20+
party.**
21+
22+
### The wrong way to disclose
23+
24+
The following actions will make you ineligible for the bug bounty program:
25+
26+
- Filing a public issue about the vulnerability
27+
- Testing the vulnerability on mainnet or testnet
28+
29+
### The right way to disclose
30+
31+
Please email us at [security@zksync.io](mailto:security@zksync.io). We appreciate detailed information about confirming
32+
or fixing the vulnerability. If possible, please use the PGP key below to encrypt the message.
33+
34+
## Exclusions
35+
36+
- Already known vulnerabilities.
37+
- Vulnerabilities in code not leading to funds lost or frozen.
38+
- Vulnerabilities not related to smart contracts or cryptography used by the protocol.
39+
40+
## Eligibility
41+
42+
- You must be the first reporter of the vulnerability
43+
- You must be able to verify a signature from the same address
44+
- Provide enough information about the vulnerability
45+
46+
## Bounty Payout
47+
48+
![bounty-table.png](/bounty-table.png)
49+
50+
For severe cases involving a total loss of funds, we will pay a bounty of $500,000.
851

952
## Contact
1053

11-
If for some reason you can't use **ImmuneFi**, then submit your requests here: [security@zksync.io](mailto:security@zksync.io).
54+
Please submit all your requests here: [security@zksync.io](mailto:security@zksync.io).
1255

1356
### PGP Key
1457

docs/updates/security-audits.md

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,24 +4,31 @@ sidebar: false
44

55
# zkSync Security Audits
66

7+
## 03.29.2022
8+
9+
By: [ABDK Consulting](https://www.abdk.consulting/). Release Tag:
10+
[Contracts-8](https://github.com/matter-labs/zksync/releases/tag/contracts-8)
11+
12+
- [Report v1](/ABDK_ZkSync_V8.pdf)
13+
714
## 06.29.2021
815

916
By: [ABDK Consulting](https://www.abdk.consulting/). Release Tag:
1017
[Contracts-5.1](https://github.com/matter-labs/zksync/releases/tag/contracts-5.1)
1118

12-
- [Report v1](https://docs.zksync.io/ABDK-ZkSync-Audit-v5.pdf)
19+
- [Report v1](/ABDK-ZkSync-Audit-v5.pdf)
1320

1421
## 03.02.2021
1522

1623
By: [ABDK Consulting](https://www.abdk.consulting/). Release Tag:
1724
[Contracts-4.3](https://github.com/matter-labs/zksync/releases/tag/contracts-4.3)
1825

1926
- [Report v2, Part 1](/ABDK-ZKSync-Audit-v2-part1.pdf).
20-
- [Report v2, Part 2](https://docs.zksync.io/ABDK-ZKSync-Audit-v2-part2.pdf).
27+
- [Report v2, Part 2](/ABDK-ZKSync-Audit-v2-part2.pdf).
2128

2229
## 16.06.2020
2330

2431
By: [ABDK Consulting](https://www.abdk.consulting/). Release Tag:
2532
[Contracts-1](https://github.com/matter-labs/zksync/releases/tag/contracts-1)
2633

27-
- [Report v1](https://docs.zksync.io/zksync-1.0-audit.pdf).
34+
- [Report v1](/zksync-1.0-audit.pdf).

firebase.json

Lines changed: 56 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,7 @@
1111
"destination": "/index.html"
1212
}
1313
],
14-
"ignore": [
15-
"firebase.json",
16-
"**/.*",
17-
"drafts",
18-
"**/node_modules/**"
19-
],
14+
"ignore": ["firebase.json", "**/.*", "drafts", "**/node_modules/**"],
2015
"redirects": [
2116
{
2217
"source": "/dev/bug-bounty.html",
@@ -83,19 +78,41 @@
8378
"destination": "/api/sdk/:path*",
8479
"type": 301
8580
}
81+
],
82+
"headers": [
83+
{
84+
"source": "**",
85+
"headers": [
86+
{
87+
"key": "Cache-Control",
88+
"value": "no-cache, no-store, must-revalidate"
89+
},
90+
{
91+
"key": "Referrer-Policy",
92+
"value": "no-referrer, strict-origin-when-cross-origin"
93+
},
94+
{
95+
"key": "X-Content-Type-Options",
96+
"value": "nosniff"
97+
},
98+
{
99+
"key": "X-Frame-Options",
100+
"value": "DENY"
101+
},
102+
{
103+
"key": "X-XSS-Protection",
104+
"value": "1; mode=block"
105+
}
106+
]
107+
}
86108
]
87109
},
88110
{
89111
"target": "staging",
90112
"cleanUrls": true,
91113
"trailingSlash": true,
92114
"public": "dist",
93-
"ignore": [
94-
"firebase.json",
95-
"**/.*",
96-
"drafts",
97-
"**/node_modules/**"
98-
],
115+
"ignore": ["firebase.json", "**/.*", "drafts", "**/node_modules/**"],
99116
"rewrites": [
100117
{
101118
"source": "**",
@@ -168,6 +185,33 @@
168185
"destination": "/api/sdk/:path*",
169186
"type": 301
170187
}
188+
],
189+
"headers": [
190+
{
191+
"source": "**",
192+
"headers": [
193+
{
194+
"key": "Cache-Control",
195+
"value": "no-cache, no-store, must-revalidate"
196+
},
197+
{
198+
"key": "Referrer-Policy",
199+
"value": "no-referrer, strict-origin-when-cross-origin"
200+
},
201+
{
202+
"key": "X-Content-Type-Options",
203+
"value": "nosniff"
204+
},
205+
{
206+
"key": "X-Frame-Options",
207+
"value": "DENY"
208+
},
209+
{
210+
"key": "X-XSS-Protection",
211+
"value": "1; mode=block"
212+
}
213+
]
214+
}
171215
]
172216
}
173217
]

0 commit comments

Comments
 (0)