Succinct zero knowledge proofs (i.e. zkSNARKs) are powerful cryptographic tools that enable a prover to convince a verifier that a given statement is true without revealing any additional information. Unfortunately, existing systems for generating zkSNARKs are expensive, which limits the applications in which these proofs can be used.
This new work (presented by co-author Pratyush Mishra) achieves security against malicious workers without relying on heavyweight cryptographic tools. We implement and evaluate our delegation protocols for a state-of-the-art zkSNARK in a variety of computational and bandwidth settings, and demonstrate that our protocols
are concretely efficient. When compared to local proving, using our protocols to delegate proof generation from a recent smartphone (a) reduces end-to-end latency by up to 26×, (b) lowers the delegator’s active computation time by up to 1447×, and (c) enables proving up to 256× larger instances
https://www.usenix.org/system/files/sec23fall-prepub-492-chiesa.pdf
Scaling Ethereum using Zero-Knowledge ProofsHyojun Kim
Introduces the way how ZKPs can be used to scale Ethereum blockchains.
— What is Zero-Knowledge Proof?
— zk-SNARKs and Succinctness
— Layer-2 Scalability using zk-SNARKs
— Using SNARK on Ethereum
— Going Future: zk-STARKs
We're hiring! abr.ge/ueaerh
Paper: https://eprint.iacr.org/2022/1355
Plonk is a widely used succinct non-interactive proof system that uses univariate polynomial commitments. Plonk is quite flexible: it supports circuits with low-degree ``custom'' gates as well as circuits with lookup gates (a lookup gate ensures that its input is contained in a predefined table). For large circuits, the bottleneck in generating a Plonk proof is the need for computing a large FFT.
In this work, the authors present HyperPlonk, an adaptation of Plonk to the boolean hypercube, using multilinear polynomial commitments. HyperPlonk retains the flexibility of Plonk but provides several additional benefits. First, it avoids the need for an FFT during proof generation. Second, and more importantly, it supports custom gates of much higher degree than Plonk without harming the running time of the prover. Both of these can dramatically speed up the prover's running time. Since HyperPlonk relies on multilinear polynomial commitments, the authors revisit two elegant constructions: one from Orion and one from Virgo. The authors also show how to reduce the Orion opening proof size to less than 10kb (an almost factor 1000 improvement) and show how to make the Virgo FRI-based opening proof simpler and shorter.
Apresentação sobre Criptografia baseada em reticulados (lattices), realizada no contexto da disciplina de Post-Quantum Cryptography do PPGCC da UFSC.
Versão odp: http://coenc.td.utfpr.edu.br/~giron/presentations/aula_lattice.odp
Scaling Ethereum using Zero-Knowledge ProofsHyojun Kim
Introduces the way how ZKPs can be used to scale Ethereum blockchains.
— What is Zero-Knowledge Proof?
— zk-SNARKs and Succinctness
— Layer-2 Scalability using zk-SNARKs
— Using SNARK on Ethereum
— Going Future: zk-STARKs
We're hiring! abr.ge/ueaerh
Paper: https://eprint.iacr.org/2022/1355
Plonk is a widely used succinct non-interactive proof system that uses univariate polynomial commitments. Plonk is quite flexible: it supports circuits with low-degree ``custom'' gates as well as circuits with lookup gates (a lookup gate ensures that its input is contained in a predefined table). For large circuits, the bottleneck in generating a Plonk proof is the need for computing a large FFT.
In this work, the authors present HyperPlonk, an adaptation of Plonk to the boolean hypercube, using multilinear polynomial commitments. HyperPlonk retains the flexibility of Plonk but provides several additional benefits. First, it avoids the need for an FFT during proof generation. Second, and more importantly, it supports custom gates of much higher degree than Plonk without harming the running time of the prover. Both of these can dramatically speed up the prover's running time. Since HyperPlonk relies on multilinear polynomial commitments, the authors revisit two elegant constructions: one from Orion and one from Virgo. The authors also show how to reduce the Orion opening proof size to less than 10kb (an almost factor 1000 improvement) and show how to make the Virgo FRI-based opening proof simpler and shorter.
Apresentação sobre Criptografia baseada em reticulados (lattices), realizada no contexto da disciplina de Post-Quantum Cryptography do PPGCC da UFSC.
Versão odp: http://coenc.td.utfpr.edu.br/~giron/presentations/aula_lattice.odp
Understanding Proof of Work (PoW) and Proof of Stake (PoS) AlgorithmsGautam Anand
We will focus on understanding "Proof of Stake (PoS)" Algorithm, how it different from "Proof of Work" algorithm, the performance benefits and security overview. We will also discuss the upcoming blockchain protocols that are planning to move to PoS.
Consensus Algorithms - Nakov at CryptoBlockCon - Las Vegas (2018)Svetlin Nakov
Consensus Algorithms
Dr. Svetlin Nakov at CryptoBlockCon - Las Vegas (11 Dec 2018)
In this talk the speaker Svetlin Nakov explains very briefly the concepts of decentralized consensus and blockchain consensus algorithms, along with examples from popular blockchain networks and DLT ledgers:
The concept of Byzantine Fault Tolerance (BFT)
The role of consensus algorithms in decentralized systems and blockchains
Proof-of-work consensus (PoW), mining, pools, hash power, ASIC mining, etc.
Proof-of-stake (PoS) and its variants: DPoS (delegated PoS), RPoS (randomized PoS), LPoS (leased PoS), PoI (proof of importance)
Practical Byzantine Fault Tolerance (PBFT) and FBA (federated byzantine agreement)
Proof-of-Authority (POA)
Non-blockchain consensus, asynchronous byzantine fault tolerance (aBFT) and Hashgraph
Zero-Knowledge Proofs: Privacy-Preserving Digital Identity with Clare NelsonSSIMeetup
This talk will introduce Zero-Knowledge Proofs (ZKPs) and explain why they are a key element in a growing number of privacy-preserving, digital-identity platforms. Clare will provide basic illustrations of ZKPs and leave the necessary mathematics foundations to the readers.
After this talk you will understand that there is a variety of ZKPs, it’s still early days, and why ZKP is such a perfect tool for digital identity platforms. This talk includes significant updates from the newly-organized ZKProof Standardization organization plus a signal of maturity: one of the first known ZKP vulnerabilities.
Clare will explain why ZKPs are so powerful, and why they are building blocks for a range of applications including privacy-preserving cryptocurrency such as Zcash, Ethereum, Artificial Intelligence, and older versions of Trusted Platform Modules (TPMs). The presentation includes many backup slides for future learning and researching, including four slides of references.
The Factoring Dead: Preparing for the CryptopocalypseAlex Stamos
A talk at Black Hat USA 2013 discussing recent advances in academic research that imperils two critical algorithms upon which Internet trust rests: RSA and Diffie-Helman.
Digital Signatures: Reassessing security of randomizable signaturesPriyanka Aash
Two signature schemes with special properties are discussed: randomizable signatures and deterministic signatures. Topic 1: Reassessing Security of Randomizable Signatures Authors: David Pointcheval; Olivier Sanders Topic 2: Differential Fault Attacks on Deterministic Signatures Authors: Christopher Ambrose; Joppe W. Bos; Bjorn Fay; Marc Joye; Manfred Lochter; Bruce Murray
(Source: RSA Conference USA 2018)
Understanding Proof of Work (PoW) and Proof of Stake (PoS) AlgorithmsGautam Anand
We will focus on understanding "Proof of Stake (PoS)" Algorithm, how it different from "Proof of Work" algorithm, the performance benefits and security overview. We will also discuss the upcoming blockchain protocols that are planning to move to PoS.
Consensus Algorithms - Nakov at CryptoBlockCon - Las Vegas (2018)Svetlin Nakov
Consensus Algorithms
Dr. Svetlin Nakov at CryptoBlockCon - Las Vegas (11 Dec 2018)
In this talk the speaker Svetlin Nakov explains very briefly the concepts of decentralized consensus and blockchain consensus algorithms, along with examples from popular blockchain networks and DLT ledgers:
The concept of Byzantine Fault Tolerance (BFT)
The role of consensus algorithms in decentralized systems and blockchains
Proof-of-work consensus (PoW), mining, pools, hash power, ASIC mining, etc.
Proof-of-stake (PoS) and its variants: DPoS (delegated PoS), RPoS (randomized PoS), LPoS (leased PoS), PoI (proof of importance)
Practical Byzantine Fault Tolerance (PBFT) and FBA (federated byzantine agreement)
Proof-of-Authority (POA)
Non-blockchain consensus, asynchronous byzantine fault tolerance (aBFT) and Hashgraph
Zero-Knowledge Proofs: Privacy-Preserving Digital Identity with Clare NelsonSSIMeetup
This talk will introduce Zero-Knowledge Proofs (ZKPs) and explain why they are a key element in a growing number of privacy-preserving, digital-identity platforms. Clare will provide basic illustrations of ZKPs and leave the necessary mathematics foundations to the readers.
After this talk you will understand that there is a variety of ZKPs, it’s still early days, and why ZKP is such a perfect tool for digital identity platforms. This talk includes significant updates from the newly-organized ZKProof Standardization organization plus a signal of maturity: one of the first known ZKP vulnerabilities.
Clare will explain why ZKPs are so powerful, and why they are building blocks for a range of applications including privacy-preserving cryptocurrency such as Zcash, Ethereum, Artificial Intelligence, and older versions of Trusted Platform Modules (TPMs). The presentation includes many backup slides for future learning and researching, including four slides of references.
The Factoring Dead: Preparing for the CryptopocalypseAlex Stamos
A talk at Black Hat USA 2013 discussing recent advances in academic research that imperils two critical algorithms upon which Internet trust rests: RSA and Diffie-Helman.
Digital Signatures: Reassessing security of randomizable signaturesPriyanka Aash
Two signature schemes with special properties are discussed: randomizable signatures and deterministic signatures. Topic 1: Reassessing Security of Randomizable Signatures Authors: David Pointcheval; Olivier Sanders Topic 2: Differential Fault Attacks on Deterministic Signatures Authors: Christopher Ambrose; Joppe W. Bos; Bjorn Fay; Marc Joye; Manfred Lochter; Bruce Murray
(Source: RSA Conference USA 2018)
Data Protection Techniques and CryptographyTalha SAVAS
Cryptography:
The study of mathematical techniques related to aspects
of providing information security services (to construct).
Cryptanalysis:
The study of mathematical techniques for attempting to
defeat information security services (to break).
Cryptology:
The study of cryptography and cryptanalysis (both).
The Security Problem
Program Threats
System and Network Threats
Cryptography as a Security Tool
User Authentication
Implementing Security Defenses
Firewalling to Protect Systems and Networks
Computer-Security Classifications
An Example: Windows XP
zkStudy Club: Subquadratic SNARGs in the Random Oracle ModelAlex Pruden
Slides for Eylon Yogev's (Bar-Ilan University) presentation at ZKStudyClub, covering his new work (co-authored w/ Alessandro Chiesa of UC Berkeley) about SNARGs in the random oracle model of sub- quadratic complexity.
Link to the original paper: https://eprint.iacr.org/2021/281.pdf
Overview of Fuzz Testing and the latest advances in the field are discussed. Fuzz testing is a popular method to find security vulnerabilities in software systems.
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofsAlex Pruden
This paper presents Reef, a system for generating publicly verifiable succinct non-interactive zero-knowledge proofs that a committed document matches or does not match a regular expression. We describe applications such as proving the strength of passwords, the provenance of email despite redactions, the validity of oblivious DNS queries, and the existence of mutations in DNA. Reef supports the Perl Compatible Regular Expression syntax, including wildcards, alternation, ranges, capture groups, Kleene star, negations, and lookarounds. Reef introduces a new type of automata, Skipping Alternating Finite Automata (SAFA), that skips irrelevant parts of a document when producing proofs without undermining soundness, and instantiates SAFA with a lookup argument. Our experimental evaluation confirms that Reef can generate proofs for documents with 32M characters; the proofs are small and cheap to verify (under a second).
Paper: https://eprint.iacr.org/2023/1886
A decade of active research has led to practical constructions of zero-knowledge succinct non-interactive arguments of knowledge (zk-SNARKs) that are now being used in a wide variety of applications. Despite this astonishing progress, overheads in proof generation time remain significant.
In this work, we envision a world where consumers with low computational resources can outsource the task of proof generation to a group of untrusted servers in a privacy-preserving manner. The main requirement is that these servers should be able to collectively generate proofs at a faster speed (than the consumer). Towards this goal, we introduce a framework called zk-SNARKs-as-a-service () for faster computation of zk-SNARKs. Our framework allows for distributing proof computation across multiple servers such that each server is expected to run for a shorter duration than a single prover. Moreover, the privacy of the prover's witness is ensured against any minority of colluding servers.
We design custom protocols in this framework that can be used to obtain faster runtimes for widely used zk-SNARKs, such as Groth16 [EUROCRYPT 2016], Marlin [EUROCRYPT 2020], and Plonk [EPRINT 2019]. We implement proof of concept zkSaaS for the Groth16 and Plonk provers. In comparison to generating these proofs on commodity hardware, we show that not only can we generate proofs for a larger number of constraints (without memory exhaustion), but can also get speed-up when run with 128 parties for constraints with Groth16 and gates with Plonk.
https://eprint.iacr.org/2023/905
This week's session covers new work from Justin Thaler (GWU) et al on Lasso/Jolt.
Lasso is a new lookup argument (more on this below) with a dramatically faster prover. Our initial implementation provides roughly a 10x speedup over the lookup argument in the popular, well-engineered halo2 toolchain; we expect improvements of around 40x when optimizations are complete. To demonstrate, we’re releasing the open source implementation, written in Rust. We invite the community to help us make Lasso as fast and robust as possible.
The second, accompanying innovation to Lasso is Jolt, a new approach to zkVM (zero knowledge virtual machine) design that builds on Lasso. Jolt realizes the “lookup singularity” – a vision initially laid out by Barry Whitehat of the Ethereum Foundation for simpler tooling and lightweight, lookup-centric circuits (more on why this matters below). Relative to existing zkVMs, we expect Jolt to achieve similar or better performance – and importantly, a more streamlined and accessible developer experience. With Jolt, it will be easier for developers to write fast SNARKs in their high-level language of choice.
Lasso: https://people.cs.georgetown.edu/jthaler/Lasso-paper.pdf
Jolt: https://people.cs.georgetown.edu/jthaler/Jolt-paper.pdf
zkStudyClub - Improving performance of non-native arithmetic in SNARKs (Ivo K...Alex Pruden
In this zkStudyClub session, Ivo presents techniques for applying the log-derivative lookup tables in a circuit using LegoSNARK-style commitment. As an application, we show how this lookup table can be used to implement range checks, specifically applying it to the non-native arithmetic. Using these optimisations, we were able to reduce the proof time for BN254 pairing in Groth16 to approx 5s (MBP M1). The technique also works for PLONKish arithmetisation.
This week, Benedikt Bünz and Binyi Chen of Espresso Systems present ProtoStar:
Accumulation is a simple yet powerful primitive that enables incrementally verifi-able computation (IVC) without the need for recursive SNARKs. We provide a generic, efficient accumulation (or folding) scheme for any (2k − 1)-move special-sound protocol. The prover in each accumulation/IVC step is also only logarithmic in the number of supported circuits and independent of the table size in the lookup
https://eprint.iacr.org/2023/620
zkStudyClub - cqlin: Efficient linear operations on KZG commitments Alex Pruden
This week, Liam Eagen (Blockstream Research) and Ariel Gabizon (Zeta Function Technologies) present cqlin - Efficient linear operations on KZG commitments with cached quotients.
Given two KZG-committed polynomials , a matrix , and subgroup of order , we present a protocol for checking that . After preprocessing, the prover makes field and group operations. This presents a significant improvement over the lincheck protocols in [CHMMVW, COS], where the prover's run-time (also after preprocessing) was quasilinear in the number of non-zeroes of M, which could be n^2.
ZK Study Club: Supernova (Srinath Setty - MS Research)Alex Pruden
This week, Srinath Setty (MS Research) will present SuperNova, a new recursive proof system for incrementally producing succinct proofs of correct execution of programs on a stateful machine with a particular instruction set (e.g., EVM, RISC-V). A distinguishing aspect of SuperNova is that the cost of proving a step of a program is proportional only to the size of the circuit representing the instruction invoked by the program step. This is a stark departure from prior works that employ universal circuits where the cost of proving a program step is proportional at least to the sum of sizes of circuits representing each supported instruction—even though a particular program step invokes only one of the supported instructions. Naturally, SuperNova can support a rich instruction set without affecting the per-step proving costs. SuperNova achieves its cost profile by building on Nova, a prior high-speed recursive proof system, and leveraging its internal building block, folding schemes, in a new manner. We formalize SuperNova’s approach as a way to realize non-uniform IVC, a generalization of IVC. Furthermore, SuperNova’s prover costs and the recursion overhead are the same as Nova’s, and in fact, SuperNova is equivalent to Nova for machines that support a single instruction.
https://eprint.iacr.org/2022/1758
Caulk: zkStudyClub: Caulk - Lookup Arguments in Sublinear Time (A. Zapico)Alex Pruden
This week, Arantxa Zapico of the Ethereum Foundation presents new work (co-authored with Vitalik Buterin, Dmitry Khovratovich, Mary Maller, Anca Nitulescu, and Mark Simkin) called Caulk, which examines position-hiding linkability for vector commitment schemes. One can prove in zero knowledge that one or more values that comprise commitment cm all belong to the vector of size committed to in C. Caulk can be used for membership proofs and lookup arguments and outperforms all existing alternatives in prover time by orders of magnitude.
https://eprint.iacr.org/2022/621
zkStudyClub: Zero-Knowledge Proofs Security, in Practice [JP Aumasson, Taurus]Alex Pruden
Slides accompanying zkStudyClub talk: Zero-Knowledge Proofs Security, in Practice. JP Aumasson (co-creator of the BLAKE hash function family) will share his experience doing security auditing for various projects that use zero-knowledge proofs. He will describe his approach, the common pitfalls in the different components of a proof system, as well as a catalog of bugs that have been discovered in various projects
This week, Luke Pearson (Polychain Capital) and Joshua Fitzgerald (Anoma) present their work on Plonkup, a protocol that combines Plookup and PLONK into a single, efficient protocol. The protocol relies on a new hash function, called Reinforced Concrete, written by Dmitry Khovratovich. The three of them will present their work together at this week's edition of zkStudyClub!
Slides:
---
To Follow the Zero Knowledge Podcast us at https://www.zeroknowledge.fm
To the listeners of Zero Knowledge Podcast, if you like what we do:
- Follow us on Twitter - @zeroknowledgefm
- Join us on Telegram - https://t.me/joinchat/TORo7aknkYNLHmCM
- Support our Gitcoin Grant - https://gitcoin.co/grants/329/zero-knowledge-podcast-2
- Support us on Patreon - https://www.patreon.com/zeroknowledge
ZK Study Club: Sumcheck Arguments and Their ApplicationsAlex Pruden
Talk given at the ZK Study Club by Jonathan Bootle and Katerina Sotiraki about the universality of sumcheck arguments and their importance in zero-knowledge cryptography.
zkStudyClub: CirC and Compiling Programs to CircuitsAlex Pruden
The programming languages community, the cryptography community, and others rely on translating programs in high-level source languages (e.g., C) to logical constraint representations. Unfortunately, building compilers for this task is difficult and time consuming. In this work, Alex Ozdemir et al present CirC, an infrastructure for building compilers for SNARKs that build upon a common abstraction: stateless, non-deterministic computations called existentially quantified circuits, or EQCs.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Monitoring Java Application Security with JDK Tools and JFR Events
Eos - Efficient Private Delegation of zkSNARK provers
1. EPFL, UC Berkeley
EOS: Efficient Private
Delegation of zkSNARK provers
Alessandro Chiesa Ryan Lehmkuhl
MIT
Aleo, UPenn
Pratyush Mishra Yinuo Zhang
UC Berkeley
2. 2
zkSNARKs
Õ(log(F))
O(1)
F function
x public input
w private witness
Prover
F function
x public input
Veri
fi
er
Õ(F)
I know w s.t. F(x, w) = 1
Zero Knowledge: V learns nothing about w except that F(x, w) = 1
Succinctness: V runs in time much less than |F|
[ ]
Mic94, Groth10, GGPR13, Groth16…
…, GWC19, CHMMVW20, …
3. Many applications of zk!
3
• Anonymous credentials [DFKP16]
• Prove existence of security vulnerability
[DARPA Sieve, OBW22]
• Coercion-resistant voting [MACI]
• …
Private
transactions
Private Smart
Contracts
Decentralized multiplayer
games
4. Problem: Proving is really slow
4
Hashing 10kB with SHA2 takes 140
seconds with Groth16, but takes
just a few milliseconds “natively”
6. Potential Solution: Outsource Proving
6
x public input
w private witness
π zkSNARK proof
DIZK [WZCPS, Usenix ’18]
Problem: This leaks secrets to the workers!
7. Delegation protocol
Goal: Outsource Proving with Privacy
7
π zkSNARK proof
x public input
w private witness
Goal 1: E
ffi
ciency The delegator’s work should be much less than proving
Goal 2: Privacy The delegator’s witness should be hidden from the worker
Problem: Can’t achieve this without heavyweight tools like FHE
10. Delegation protocol
10
π zkSNARK proof
x public input
w private witness
Goal 1: E
ffi
ciency
Goal 2: Privacy
The delegator’s work should be much less than proving
The delegator’s witness should be hidden from the
workers, as long as at least 1 worker is honest
Goal: Outsource Proving with Threshold Privacy
11. This work: Delegation for zkSNARK Provers
11
We show to delegate zkSNARK proving for systems based on Polynomial IOPs
We show how to construct delegation schemes for:
1. the KZG and inner-product-argument polynomial commitment schemes,
2. the Marlin [CHMMVW20] PIOP,
3. Generically any zkSNARK combining these components
We implemented and evaluated our protocols.
TL; DR: delegating from a mobile phone is 26x faster
than computing locally!
13. What is MPC?
13
x1
x2 x3
A way for multiple parties to compute a function over
their joint inputs in a privacy-preserving manner
F
F(x1, x2, x3)
14. Simple MPC Construction
14
Model of Computation
×
+
=
x1
x2
x3
Arithmetic circuits
over
fi
nite
fi
eld
Circuit Execution
1. Share inputs with additive secret sharing
m
sn = [[m]]n
si = [[m]]i
s1 = [[m]]1
Share Σ m
2. Evaluate circuit gate by gate:
: Just add local shares!
Add(x, y)
: Triple-based, HE-based, etc
(All require interaction!)
Mul(x, y)
[SPDZ]
15. MPC to compute SNARK Prover?
15
Delegation protocol
π zkSNARK proof
x public input
w private witness
MPC for
C
𝖲
𝖭
𝖠
𝖱
𝖪
MPC is slow! For example,
• Multiplications require interaction
• Preprocessing requires heavy cryptography
• Malicious security requires at least 2x overhead
Circuit for SNARK is large! For example,
• Need to support
fi
eld ops, group ops, RO calls
• Need to support large MSMs and FFTs
18. What operations does SNARK prover perform?
18
P(pk,
𝕩
,
𝕨
)
PIOP.
P
ROVER
p1
r1
…
PC.COMMIT
QUERY
PC.OPEN
pt
rt
PC.COMMIT
cm1
cmt
(π
𝖯
𝖢
, [v])
Q
ρ
ρ
PIOP over requires
arithmetic.
Hence, circuit should
natively support
operations.
𝔽
r
𝔽
r
𝔽
r
Popular PC schemes
require EC ops,
which involve ops
for .
𝔽
q
𝔽
q ≠
𝔽
r
Even if we instantiate
RO with MPC/
SNARK-friendly
hashes, this still
require tons of
multiplications
20. Solution: generalize circuit!
20
Model of Computation
ρ
+
𝔽
×
𝔾
x1
x2
x3
New gates for
addition,
-(scalar) multiplication,
RO calls
𝔾𝔾
Circuit Execution
Key insight: additive sharing is linear!
2. Evaluate circuit gate by gate:
, : as before
Add
𝔽
(x, y) Mul
𝔽
(x, y)
[Smart-Alaoui 2019]
[Ozdemir-Boneh 2022]
: locally add shares of
Add
𝔾
(X, Y) X, Y
: scalar-multiply by share of
Mul
𝔾
(x, Y) Y x
(assumes is public)
Y
: coming up!
ρ(x)
M ∈
𝔾
Sn ∈
𝔾
Si ∈
𝔾
S1 ∈
𝔾
Share Σ M
22. Ef
fi
cient Circuits for PIOP Provers
22
Evaluate over
subgroup
p Divide by
vanishing poly
p
Multiply by
public scalar
p
Multiply two
polynomials
Require only addition gates Local computation
~ as ef
fi
cient as plaintext prover
⟹
PIOP.PROVER
Interpolate
polynomial
Add two
polynomials
FFT (linear)
IFFT (linear)
Pointwise mul
(depth-1)
23. Ef
fi
cient Circuits for PC Schemes
23
1. Parse as
2. Let the coe
ffi
cients of be
3. Output (like standard KZG!)
KZG.Commit(
𝗌
𝗋
𝗌
, [[p]]) :
𝗌
𝗋
𝗌
{G, βG, …, βd
G}
[[p]] (a0, a1, …, ad−1)
[[cm]] :=
d−1
∑
i=0
ai ⋅ βi
G
1. Compute share of witness poly
2. Output
KZG.Open(
𝗌
𝗋
𝗌
, [[p]], z) :
[[w(X)]] :=
[[p(X)]] − [[p(z)]]
X − z
[[π]] := KZG.Commit(
𝗌
𝗋
𝗌
, [[w]])
Complexity is same as standard KZG + no interaction!
Similar techniques in [KZGM21, OB22]
24. Delegation protocol
Progress so far
24
π zkSNARK proof
x public input
w private witness
MPC for
C
𝖲
𝖭
𝖠
𝖱
𝖪
MPC is slow! For example,
• Multiplications require interaction
• Preprocessing requires heavy cryptography
• Malicious security requires at least 2x overhead
Designed e
ffi
cient !
But so far only as e
ffi
cient as
prior work [KZGM21, OB22]
Can we do better?
C
𝖲
𝖭
𝖠
𝖱
𝖪
26. How to Improve MPC?
26
Opportunity 1:
Asymmetric
Threat Model
Opportunity 2:
Error-resilient
nature of C
𝖲
𝖭
𝖠
𝖱
𝖪
Delegation
protocol
Delegator is always
honest!
If SNARK prover has a non-trivial
deviation from honest algorithm,
soundness guarantees of zkSNARK
will ensure the proof is invalid
Can we use this to get cheaper
security against malicious workers?
37. Malicious security
37
MPC generally has high overhead
for malicious security
For example, SPDZ uses algebraic
MACs, which doubles the amount of
communication and computation.
This is re
fl
ected in the protocol of
[OB22], which incurs at least a 2x
overhead compared to local proving.
Can we do better?
38. Intuition: GMW Compiler
38
ZKP for correct
computation of
each message
x1
x2 x3
F(x1, x2, x3)
Semi-honest
Secure
+
Privacy (but not correctness)
against malicious Adv
x1
x2 x3
F(x1, x2, x3)
Malicious
Secure:
Privacy and correctness
against malicious Adv
Expensive!
39. Idea: The computation is itself a ZKP!
39
Delegation
MPC
𝖵
𝖾
𝗋
𝗂
𝖿
𝗒
(
𝗏
𝗄
, x, π)
?
= 1
Privacy: Guaranteed by base semi-honest protocol.
Correctness: If adversary deviates in non-trivially,
then end proof will fail to verify
41. Our Approach: Consistency Checkers
41
Delegation
MPC
𝖵
𝖾
𝗋
𝗂
𝖿
𝗒
(
𝗏
𝗄
, x, π)
?
= 1
Introduce additional cheap checks
that enforce that workers are using
the provided witness, and not a
malleated one
𝖢
𝗁
𝖾
𝖼
𝗄
(
𝗏
𝗄
, x, π′

)
?
= 1
42. Our Approach: Consistency Checkers
42
Delegation
MPC
𝖵
𝖾
𝗋
𝗂
𝖿
𝗒
(
𝗏
𝗄
, x, π)
?
= 1
Consistency checker for Marlin:
additional query to witness
polynomial + linear amount of
delegator work
Introduce additional cheap checks
that enforce that workers are using
the provided witness, and not a
malleated one
𝖢
𝗁
𝖾
𝖼
𝗄
(
𝗏
𝗄
, x, π′

)
?
= 1
43. Our Overall: Consistency Checkers
43
Delegation
MPC
𝖵
𝖾
𝗋
𝗂
𝖿
𝗒
(
𝗏
𝗄
, x, π)
?
= 1
Consistency checker for Marlin:
additional query to witness
polynomial + linear amount of
delegator work
Introduce additional cheap checks
that enforce that workers are using
the provided witness, and not a
malleated one
𝖢
𝗁
𝖾
𝖼
𝗄
(
𝗏
𝗄
, x, π′

)
?
= 1
44. 44
But does all of this result
in concrete performance
improvements?
45. Tons more optimizations!
45
Crypto:
• No heavyweight malicious security techniques
• Avoiding MPC for witness-independent part of zkSNARK
• Multiplication triple generation at delegator
• Novel security-ef
fi
ciency trade-offs
Systems:
• Better parallelization for high-core machines
• Eager memory reclamation in AHP prover
46. Implementation
46
We implemented our protocols in a Rust library in the
arkworks ecosystem.
Our library constructs delegation protocols for any PIOP-based
SNARKs given circuits for the PIOP prover and PC scheme.
Additionally, we implement circuits for the
1. KZG polynomial commitment scheme, and
2. Marlin [CHMMVW20] PIOP
This gives us a delegation protocol for the Marlin zkSNARK.
48. Thank You!
48
Code coming soon to an arkworks
repository near you!
Paper: www.usenix.org/conference/usenixsecurity23/presentation/chiesa
(Also coming soon to ePrint)