-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
skeleton for rusty systems class website
- Loading branch information
0 parents
commit 347f0a6
Showing
4 changed files
with
247 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
# Simple workflow for deploying static content to GitHub Pages | ||
name: Deploy static content to Pages | ||
|
||
on: | ||
# Runs on pushes targeting the default branch | ||
push: | ||
branches: ["main"] | ||
|
||
# Allows you to run this workflow manually from the Actions tab | ||
workflow_dispatch: | ||
|
||
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages | ||
permissions: | ||
contents: read | ||
pages: write | ||
id-token: write | ||
|
||
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. | ||
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. | ||
concurrency: | ||
group: "pages" | ||
cancel-in-progress: false | ||
|
||
jobs: | ||
# Single deploy job since we're just deploying | ||
deploy: | ||
environment: | ||
name: github-pages | ||
url: ${{ steps.deployment.outputs.page_url }} | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
- name: Setup Pages | ||
uses: actions/configure-pages@v5 | ||
- name: Upload artifact | ||
uses: actions/upload-pages-artifact@v3 | ||
with: | ||
# Upload entire repository | ||
path: '.' | ||
- name: Deploy to GitHub Pages | ||
id: deployment | ||
uses: actions/deploy-pages@v4 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
publish: | ||
-git commit -am "update site" | ||
-git push | ||
ssh dstefan@login.eng.ucsd.edu 'cd public_html/cse291j-spring24/ && git pull' | ||
|
||
update: | ||
-rm markdeep.min.js | ||
wget https://morgan3d.github.io/markdeep/latest/markdeep.min.js | ||
|
||
view: | ||
firefox index.html& |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,183 @@ | ||
<meta charset="utf-8"><!-- -*- markdown -*- --> | ||
**CSE 291-?: Building Secure Systems with Rust** | ||
[*Deian Stefan*](https://cseweb.ucsd.edu/~dstefan/) and [*Evan Johnson*](https://enjhnsn2.github.io/) | ||
|
||
About | ||
============================================================== | ||
|
||
This course will explore how using a language like Rust with a powerful type | ||
system and strong safety guarantees affects the design of secure systems. Do the | ||
safety guarantees provided by Rust (e.g., memory safety) make it easier | ||
to provide stronger guarantees using techniques like verification? What classes | ||
of vulnerabilities can we completely eliminate by cleverly taking advantage of Rust's | ||
type system? Where and how do Rust's safety guarantees break down when applied | ||
to low-level systems code? To (start to) answer these questions, students will read, | ||
present, and discuss recent research papers in the field and conduct a relevant | ||
quarter-long research project in small groups. | ||
|
||
Lectures: | ||
: Day TBD, Time TBD, Location TBD | ||
|
||
Staff: | ||
: **Instructors**: Deian Stefan and Evan Johnson | ||
|
||
Office hours: | ||
: **Deian**: TBD | ||
: **Evan**: TBD | ||
|
||
Class discussion: | ||
: We'll use the CSE slack channel `cse291?-fall24` | ||
|
||
Calendar and Readings | ||
============================================================== | ||
|
||
|
||
<!-- Tue Apr 2 2024: Introduction | ||
Thu Apr 4 2024: Rust | ||
- *Reading*: | ||
- *Optional reading*: | ||
Tue Apr 9 2024: | ||
Tue Apr 9 2024: | ||
Tue Apr 9 2024: | ||
Tue Apr 9 2024: | ||
Tue Apr 9 2024: | ||
Tue Apr 9 2024: | ||
Tue Apr 9 2024: | ||
Tue Apr 9 2024: | ||
Tue Apr 9 2024: | ||
Tue Apr 9 2024: | ||
Tue Apr 9 2024: | ||
Tue Apr 9 2024: | ||
Tue Apr 9 2024: | ||
Tue Apr 9 2024: | ||
Tue Apr 9 2024: | ||
Tue Apr 9 2024: | ||
Tue Apr 9 2024: | ||
Tue Apr 9 2024: --> | ||
|
||
|
||
<!-- | ||
Thu Apr 4 2024: Bitcoin | ||
- *Reading*: | ||
- [Bitcoin: A Peer-to-Peer Electronic Cash System](https://bitcoin.org/bitcoin.pdf), by Satoshi Nakamoto | ||
- Block Chain, Transactions, P2P Network sections from [Bitcoin Developer Guide](https://developer.bitcoin.org/reference/) | ||
- *Optional reading*: | ||
- [A Deep Dive into Bitcoin Mining Pools](https://arxiv.org/pdf/1905.05999.pdf) by Matteo Romiti et al. | ||
Tue Apr 9 2024: Security of Bitcoin | ||
- *Reading*: | ||
- [Majority is not Enough: Bitcoin Mining is Vulnerable](https://arxiv.org/abs/1311.0243) by Ittay Eyal and Emin Gun Sirer | ||
- [On the Instability of Bitcoin Without the Block Reward](https://www.cs.princeton.edu/~arvindn/publications/mining_CCS.pdf) by Miles Carlsten et al. | ||
Thu Apr 11 2024: Bitcoin hacks | ||
- [*Slides*](./slides/bitcoin-hacks.pdf) | ||
- *Reading*: | ||
- [On the Malleability of Bitcoin Transactions](https://fc15.ifca.ai/preproceedings/bitcoin/paper_9.pdf) by Marcin Andrychowicz et al. | ||
- [Mt. Gox: What We Still Don’t Know 10 Years After the Collapse](https://www.coindesk.com/consensus-magazine/2024/02/28/mt-gox-what-we-still-dont-know-10-years-after-the-collapse/) by Mark Hunter | ||
- *Optional reading*: | ||
- [The Bitcoin Brain Drain: Examining the Use and Abuse of Bitcoin Brain Wallets](https://jbonneau.com/doc/VBCKM16-FC-bitcoin_brain_wallets.pdf) by Marie Vasek et al. | ||
Tue Apr 16 2024: Guest talk | ||
- *Speaker*: [David Anderson](https://www.cs.cmu.edu/~dga/), Carnegie Mellon University. | ||
Thu Apr 18 2024: Ethereum (proof of stake) | ||
- [*Slides*](./slides/ethereum.pdf) | ||
- *Reading*: | ||
- [Ethereum docs](https://ethereum.org/en/developers/docs/) | ||
- *Optional*: | ||
- [Ethereum: A secure decentralised generalised transaction ledger -- EIP-150 revision](https://gavwood.com/paper.pdf) by Gavin Wood | ||
Tue Apr 23 2024: Ethereum (smart contracts) | ||
- [*Slides*](./slides/ethereum.pdf) | ||
- *Reading*: | ||
- [Solidity](https://docs.soliditylang.org/en/latest/) | ||
- [ERC-4337](https://eips.ethereum.org/EIPS/eip-4337) | ||
Thu Apr 25 2024: Bitcoin tracing | ||
- [*Slides*](./slides/tracing.pdf) | ||
- *Reading*: | ||
- [A Fistful of Bitcoins: Characterizing Payments Among Men with No Names](https://cseweb.ucsd.edu/~smeiklejohn/files/imc13.pdf) by Sarah Meiklejohn et al. | ||
- *Optional reading*: | ||
- [How to Peel a Million: Validating and Expanding Bitcoin Clusters](https://smeiklej.com/files/usenix22.pdf) by George Kappos et al. | ||
Tue Apr 30 2024: Mixers | ||
- [*Slides*](./slides/anti-tracing.pdf) | ||
- *Reading*: | ||
- [Mixcoin: Anonymity for Bitcoin with accountable mixes](https://jbonneau.com/doc/BNMCKF14-FC-mixcoin_proceedings.pdf) by Joseph Bonneau et al. | ||
- [Bitcoin Fog](https://www.wired.com/story/bitcoin-fog-dark-web-cryptocurrency-arrest/) | ||
- *Optional*: | ||
- [How Tornado Cash Works](https://www.rareskills.io/post/how-does-tornado-cash-work) | ||
Thu May 2 2024: Guest talk | ||
- *Speaker*: [Eun Young Choi](https://www.linkedin.com/in/eun-young-choi-9900474/), US Department of Justice. | ||
Tue May 7 2024: MEV and frontrunning | ||
- [*Slides*](./slides/mev.pdf) | ||
- *Reading*: | ||
- [Flash Boys 2.0: Frontrunning, Transaction Reordering, and Consensus Instability in Decentralized Exchanges](https://arxiv.org/pdf/1904.05234.pdf) by Philip Daian et al. | ||
- [Quantifying Blockchain Extractable Value: How dark is the forest?](https://arxiv.org/pdf/2101.05511.pdf) by Kaihua Qin et al. | ||
- *Optional*: | ||
- [Time to Brige: Measuring Block Construction Markets](https://arxiv.org/pdf/2305.16468.pdf) by Anton Wahrstätter et al. | ||
Thu May 9 2024: DeFi: Stablecoins, lending protocols, swaps and DEXes | ||
- [*Slides*](https://ucsdcloud-my.sharepoint.com/:p:/r/personal/dstefan_ucsd_edu/Documents/defi.pptx?d=w25a50253202c4e829ae5ba2338a985e6&csf=1&web=1&e=zTaz7p) | ||
- *Reading*: | ||
- [Uniswap](https://uniswapv3book.com/) | ||
- *Optional*: | ||
- [Compound: The Money Market Protocol](https://compound.finance/documents/Compound.Whitepaper.pdf) | ||
- [Attacking the DeFi Ecosystem with Flash Loans for Fun and Profit](https://arxiv.org/abs/2003.03810) by Kaihua Qin et al. | ||
- *Optional*: | ||
- [Reducing the Volatility of Cryptocurrencies -- A Survey of Stablecoins](https://arxiv.org/ftp/arxiv/papers/2103/2103.01340.pdf) by Ayten Kahya et al. | ||
Tue May 14 2024: Guest talk | ||
- *Speaker*: [Iam Miers](https://www.cs.umd.edu/~imiers/), University of Maryland. | ||
Thu May 16 2024: Class cancelled (work on your projects) | ||
Thu May 21 2024: Guest talk | ||
- *Speaker*: [Nicolas Christin](https://www.andrew.cmu.edu/user/nicolasc/), Carnegie Mellon University. | ||
Tue May 23 2024: DeFi Hacks | ||
- *Reading*: | ||
- [Attacking the DeFi Ecosystem with Flash Loans for Fun and Profit](https://arxiv.org/abs/2003.03810) by K. Qin et al. | ||
- [SoK: Decentralized Finance (DeFi) Attacks](https://arxiv.org/pdf/2208.13035.pdf) by Liyi Zhou et al. | ||
Tue May 28 2024: Cross-chain bridges | ||
- [*Slides*](./slides/briges.pdf) | ||
- *Reading*: | ||
- [zkBridge: Trustless Cross-chain Bridges Made Practical](https://dl.acm.org/doi/abs/10.1145/3548606.3560652) by Tiancheng Xie et al. | ||
Thu May 30 2024: Bridge hacks | ||
- *Reading*: | ||
- [SoK: Security of Cross-chain Bridges: Attack Surfaces, Defenses, and Open Problems](https://arxiv.org/abs/2312.12573) by Zhang et al. | ||
Tue Jun 4 2024: Avalanche | ||
- *Reading*: | ||
- [Scalable and Probabilistic Leaderless BFT Consensus through Metastability](https://arxiv.org/pdf/1906.08936) | ||
- [Vryx: Fortifying Decoupled State Machine Replication](https://hackmd.io/@patrickogrady/rys8mdl5p#Vryx-Fortifying-Decoupled-State-Machine-Replication) by P. O'Grady | ||
- [Frosty: Bringing strong liveness guarantees to the Snow family of consensus protocols.](https://arxiv.org/pdf/2404.14250) by A. Buchwald et al. | ||
Thu Jun 6 2024: Regulation and crypto | ||
- *Reading*: | ||
- [Cryptocurrency: Selected Policy Issues](https://crsreports.congress.gov/product/pdf/R/R47425) by Paul Tierno | ||
- [Blockchain in Finance: Legislative and Regulatory Actions Are Needed to Ensure Comprehensive Oversight of Crypto Assets](https://www.gao.gov/products/gao-23-105346) by US General Accountability Office (just read summary) | ||
--> | ||
|
||
|
||
<style class="fallback">body{visibility:hidden;white-space:pre;font-family:monospace}</style><script src="markdeep.min.js"></script> | ||
<script> | ||
window.alreadyProcessedMarkdeep || (document.body.style.visibility="visible"); | ||
markdeepOptions= {tocStyle: 'short', sortScheduleLists: false }; | ||
</script> | ||
|
Large diffs are not rendered by default.
Oops, something went wrong.