diff --git a/app/[lang]/blog/[slug]/page.tsx b/app/[lang]/blog/[slug]/page.tsx index a47f17d..bd808b7 100644 --- a/app/[lang]/blog/[slug]/page.tsx +++ b/app/[lang]/blog/[slug]/page.tsx @@ -22,15 +22,13 @@ export async function generateMetadata({ params }: any): Promise { const post = await getArticleById(params.slug) const imageUrl = - (post?.image ?? "")?.length > 0 - ? `/articles/${post?.id}/${post?.image}` - : "/og-image.png" + post && (post?.image ?? "")?.length > 0 ? post?.image : "/og-image.png" const metadata: Metadata = { title: post?.title, description: post?.tldr, openGraph: { - images: [{ url: imageUrl, width: 1200, height: 630 }], + images: [{ url: imageUrl as string, width: 1200, height: 630 }], }, } @@ -48,10 +46,7 @@ export default function BlogArticle({ params }: any) { const slug = params.slug const post = getArticleById(slug) - const imageUrl = - (post?.image ?? "")?.length > 0 - ? `/articles/${post?.id}/${post?.image}` - : undefined + const imageUrl = (post?.image ?? "")?.length > 0 ? post?.image : undefined const imageAsCover = true diff --git a/articles/README.md b/articles/README.md index c7902ba..8b233db 100644 --- a/articles/README.md +++ b/articles/README.md @@ -15,7 +15,7 @@ Edit the frontmatter section at the top of the file: --- authors: ["Your Name"] # Add your name or multiple authors in an array title: "Your Article Title" # The title of your article -image: "/articles/my-new-article/cover.webp" # Image used as cover, Keep in mind the image size, where possible use .webp format, possibly images less then 200/300kb +image: "/articles/articles-name-folder/cover.webp" # Image used as cover, Keep in mind the image size, where possible use .webp format, possibly images less then 200/300kb tldr: "A brief summary of your article" #Short summary date: "YYYY-MM-DD" # Publication date in ISO format canonical: "mirror.xyz/my-new-article" # (Optional) The original source URL, this tells search engines the primary version of the content @@ -50,8 +50,6 @@ Write your article content using Markdown formatting: 2. Add your images to this folder: - Any additional images you want to use in your article should be placed in this folder - - Reference images in your article using just the file name and the extensions of it - - ## Step 4: Preview Your Article diff --git a/articles/_article-template.md b/articles/_article-template.md index f99d437..507b73d 100644 --- a/articles/_article-template.md +++ b/articles/_article-template.md @@ -1,7 +1,7 @@ --- authors: [""] title: "Examle Title" -image: "cover.png" +image: "/articles/[article_folder]/cover.web" tldr: "" date: "2024-04-07" --- diff --git a/articles/advancing-anon-aadhaar-whats-new-in-v100.md b/articles/advancing-anon-aadhaar-whats-new-in-v100.md index 0d6319c..7fe645a 100644 --- a/articles/advancing-anon-aadhaar-whats-new-in-v100.md +++ b/articles/advancing-anon-aadhaar-whats-new-in-v100.md @@ -1,7 +1,7 @@ --- authors: ["Anon Aadhaar Team"] title: "Advancing Anon Aadhaar: what's new in v1.0.0" -image: "advancing-anon-aadhaar-whats-new-in-v100-cover.webp" +image: "/articles/advancing-anon-aadhaar-whats-new-in-v100/advancing-anon-aadhaar-whats-new-in-v100-cover.webp" tldr: "This post was written by the Anon Aadhaar team. If you’re new to Anon Aadhaar make sure to read our [initial announcement post](https://mirror.xyz/privacy-scaling-explorations.eth/6R8kACTYp9mF3eIpLZMXs8JAQmTyb6Uy8KnZqzmDFZI)." date: "2024-02-14" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/YnqHAxpjoWl4e_K2opKPN4OAy5EU4sIJYYYHFCjkNOE" diff --git a/articles/announcing-anon-aadhaar.md b/articles/announcing-anon-aadhaar.md index 18d84d6..bc6cf3c 100644 --- a/articles/announcing-anon-aadhaar.md +++ b/articles/announcing-anon-aadhaar.md @@ -1,7 +1,7 @@ --- authors: ["Anon Aadhaar team"] title: "Announcing Anon Aadhaar" -image: "announcing-anon-aadhaar-cover.webp" +image: "/articles/announcing-anon-aadhaar/announcing-anon-aadhaar-cover.webp" tldr: "_This post was written by the Anon Aadhaar team._ /n/n _We’re excited to announce the public release of Anon Aadhaar!_" date: "2023-09-21" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/6R8kACTYp9mF3eIpLZMXs8JAQmTyb6Uy8KnZqzmDFZI" diff --git a/articles/anonklub-reflections-on-our-journey-in-privacy-preserving-solutions.md b/articles/anonklub-reflections-on-our-journey-in-privacy-preserving-solutions.md index a116fb7..17f69b8 100644 --- a/articles/anonklub-reflections-on-our-journey-in-privacy-preserving-solutions.md +++ b/articles/anonklub-reflections-on-our-journey-in-privacy-preserving-solutions.md @@ -1,7 +1,7 @@ --- authors: ["AnonKlub Team"] title: "AnonKlub: Reflections on Our Journey in Privacy-Preserving Solutions" -image: "anonklub-reflections-on-our-journey-in-privacy-preserving-solutions-cover.webp" +image: "/articles/anonklub-reflections-on-our-journey-in-privacy-preserving-solutions/anonklub-reflections-on-our-journey-in-privacy-preserving-solutions-cover.webp" tldr: "This post was written by the AnonKlub team." date: "2024-10-01" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/7VTKFVR4PM75WtNnBzuQSBZW-UYoJOsnzBBQmB9MWbY" diff --git a/articles/bandada-is-live.md b/articles/bandada-is-live.md index f4e1c53..f79cdad 100644 --- a/articles/bandada-is-live.md +++ b/articles/bandada-is-live.md @@ -1,7 +1,7 @@ --- authors: ["Bandada Team"] title: "Bandada is live!" -image: "bandada-is-live-cover.webp" +image: "/articles/bandada-is-live/bandada-is-live-cover.webp" tldr: "This post was written by the Bandada team. /n/n We are happy to announce the public release of Bandada V1! Try our [app](https://bandada.pse.dev/) out or run it yourself locally [v1.0.0-alpha](https://github.com/privacy-scaling-explorations/bandada/releases/tag/v1.0.0-alpha)" date: "2023-08-23" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/p3Mtft28FG1ctgeUARVEKLTK_KexnWC6T4CUHaQark4" diff --git a/articles/beyond-zero-knowledge-whats-next-in-programmable-cryptography.md b/articles/beyond-zero-knowledge-whats-next-in-programmable-cryptography.md index 6f6acb9..2f0c897 100644 --- a/articles/beyond-zero-knowledge-whats-next-in-programmable-cryptography.md +++ b/articles/beyond-zero-knowledge-whats-next-in-programmable-cryptography.md @@ -1,7 +1,7 @@ --- authors: ["kichong"] title: "Beyond Zero-Knowledge: What's Next in Programmable Cryptography?" -image: "beyond-zero-knowledge-whats-next-in-programmable-cryptography-cover.webp" +image: "/articles/beyond-zero-knowledge-whats-next-in-programmable-cryptography/beyond-zero-knowledge-whats-next-in-programmable-cryptography-cover.webp" tldr: "_This post was written by [kichong](https://twitter.com/kichongtran) with helpful feedback and comments from [sinu](https://twitter.com/sinu_eth) and [jmall](https://twitter.com/Janmajaya_mall)._" date: "2023-11-09" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/xXcRj5QfvA_qhkiZCVg46Gn9uX8P_Ld-DXlqY51roPY" diff --git a/articles/certificate-transparency-using-newtonpir.md b/articles/certificate-transparency-using-newtonpir.md index b4f1847..f6beb10 100644 --- a/articles/certificate-transparency-using-newtonpir.md +++ b/articles/certificate-transparency-using-newtonpir.md @@ -1,7 +1,7 @@ --- authors: ["PSE Team"] title: "Certificate Transparency Using NewtonPIR" -image: "certificate-transparency-using-newtonpir-cover.webp" +image: "/articles/certificate-transparency-using-newtonpir/certificate-transparency-using-newtonpir-cover.webp" tldr: "This post was written by PSE grantee Vishal Kulkarni." date: "2025-01-28" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/V0PIyv1d_e_WPsAVhBP7zkDvn0XACY63uSvFFxBvjrk" diff --git a/articles/circom-mpc-tldr-and-retrospective.md b/articles/circom-mpc-tldr-and-retrospective.md index e1b7441..0ab9e69 100644 --- a/articles/circom-mpc-tldr-and-retrospective.md +++ b/articles/circom-mpc-tldr-and-retrospective.md @@ -1,7 +1,7 @@ --- authors: ["Circom MPC research team"] title: "Circom MPC: TL;DR and Retrospective" -image: "circom-mpc-tldr-and-retrospective-cover.webp" +image: "/articles/circom-mpc-tldr-and-retrospective/circom-mpc-tldr-and-retrospective-cover.webp" tldr: "This post was authored by the Circom MPC research team." date: "2025-03-06" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/qelA6kAr-CMq-dgmvFUKMMqxf6GoDaP8Cs-5sRWYfO4" diff --git a/articles/code-optimizations-in-the-landscape-of-post-quantum-cryptography.md b/articles/code-optimizations-in-the-landscape-of-post-quantum-cryptography.md index 4023865..1fdd2ff 100644 --- a/articles/code-optimizations-in-the-landscape-of-post-quantum-cryptography.md +++ b/articles/code-optimizations-in-the-landscape-of-post-quantum-cryptography.md @@ -1,7 +1,7 @@ --- authors: ["Miha Stopar"] title: "Code Optimizations in the Landscape of Post-Quantum Cryptography" -image: "code-optimizations-in-the-landscape-of-post-quantum-cryptography-cover.webp" +image: "/articles/code-optimizations-in-the-landscape-of-post-quantum-cryptography/code-optimizations-in-the-landscape-of-post-quantum-cryptography-cover.webp" tldr: "This post was written by PSE researcher Miha Stopar." date: "2025-04-07" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/BKI3tyauHIiUCYHgma-EHeSRXNTNDtLUQV9VNGQWLUg" diff --git a/articles/continuing-the-zero-gravity-journey.md b/articles/continuing-the-zero-gravity-journey.md index ff444c5..7edd1ee 100644 --- a/articles/continuing-the-zero-gravity-journey.md +++ b/articles/continuing-the-zero-gravity-journey.md @@ -1,7 +1,7 @@ --- authors: ["George Wiese"] title: "Continuing the Zero Gravity Journey" -image: "zero-to-start-applied-fully-homomorphic-encryption-fhe-part-2-cover-1.webp" +image: "/articles/continuing-the-zero-gravity-journey/continuing-the-zero-gravity-journey-cover.webp" tldr: "_This post was written by [George Wiese](https://github.com/georgwiese) and [Artem Grigor](https://github.com/ElusAegis). After Zero Gravity's 1st place finish at [ZK Hack Lisbon in April](https://zkhack.dev/2023/07/11/zk-hack-lisbon/), PSE recognized the potential of the Zero Gravity project and provided a grant for further research in the ZKML area._" date: "2023-10-19" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/Jpy-PUcH1tpOWrqSdGS4gCxa72F-aZCssACJnFDD1U0" diff --git a/articles/from-cex-to-ccex-with-summa-part-1.md b/articles/from-cex-to-ccex-with-summa-part-1.md index ed15019..02dda63 100644 --- a/articles/from-cex-to-ccex-with-summa-part-1.md +++ b/articles/from-cex-to-ccex-with-summa-part-1.md @@ -1,7 +1,7 @@ --- authors: ["Enrico Bottazzi"] title: "From CEX to CCEX with Summa Part 1" -image: "from-cex-to-ccex-with-summa-part-1-cover.webp" +image: "/articles/from-cex-to-ccex-with-summa-part-1/from-cex-to-ccex-with-summa-part-1-cover.webp" tldr: "This post was written by [Enrico Bottazzi](https://github.com/enricobottazzi) /n/n Special thanks to Yi-Hsiu Chen (Coinbase), Shashank Agrawal (Coinbase), Stenton Mayne (kn0x1y), Michelle Lai and Kostas Chalkias (Mysten Labs) for review and discussion. /n/n Part 1 introduces the main concepts behind the Summa protocol and can be skipped if already familiar to the reader. /n/n [Part 2](https://mirror.xyz/privacy-scaling-explorations.eth/f2ZfkPXZpvc6DUmG5-SyLjjYf78bcOcFeiJX2tb2hS0) dives into a full Proof of Solvency flow." date: "2023-09-14" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/_1Y6ExFD_Rs3oDxwx5_kWAj_Tl_L9c0Hm7E6SVJei0A" diff --git a/articles/from-cex-to-ccex-with-summa-part-2.md b/articles/from-cex-to-ccex-with-summa-part-2.md index ea2885f..929abb5 100644 --- a/articles/from-cex-to-ccex-with-summa-part-2.md +++ b/articles/from-cex-to-ccex-with-summa-part-2.md @@ -1,7 +1,7 @@ --- authors: ["Enrico Bottazzi"] title: "From CEX to CCEX with Summa Part 2" -image: "from-cex-to-ccex-with-summa-part-2-cover.webp" +image: "/articles/from-cex-to-ccex-with-summa-part-2/from-cex-to-ccex-with-summa-part-2-cover.webp" tldr: "This post was written by [Enrico Bottazzi](https://github.com/enricobottazzi) /n/n Special thanks to Yi-Hsiu Chen (Coinbase), Shashank Agrawal (Coinbase), Stenton Mayne (kn0x1y), Michelle Lai and Kostas Chalkias (Mysten Labs) for review and discussion. /n/n [Part 1](https://mirror.xyz/privacy-scaling-explorations.eth/_1Y6ExFD_Rs3oDxwx5_kWAj_Tl_L9c0Hm7E6SVJei0A) introduces the main concepts behind the Summa protocol. /n/n Part 2 dives into a full Proof of Solvency flow." date: "2023-09-14" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/f2ZfkPXZpvc6DUmG5-SyLjjYf78bcOcFeiJX2tb2hS0" diff --git a/articles/intmax-a-scalable-payment-l2-from-plasma-and-validity-proofs.md b/articles/intmax-a-scalable-payment-l2-from-plasma-and-validity-proofs.md index bf69d63..03e789d 100644 --- a/articles/intmax-a-scalable-payment-l2-from-plasma-and-validity-proofs.md +++ b/articles/intmax-a-scalable-payment-l2-from-plasma-and-validity-proofs.md @@ -1,7 +1,7 @@ --- authors: ["PSE researcher Pierre"] title: "Intmax: a scalable payment L2 from plasma and validity proofs" -image: "intmax-a-scalable-payment-l2-from-plasma-and-validity-proofs-cover.webp" +image: "/articles/intmax-a-scalable-payment-l2-from-plasma-and-validity-proofs/intmax-a-scalable-payment-l2-from-plasma-and-validity-proofs-cover.webp" tldr: "This post was written by PSE researcher Pierre and originally posted on his [personal blog](https://www.pierredm.xyz/posts/intmax). Thanks to the Intmax team for their helpful review on this post!" date: "2025-03-04" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/__VLZrfjSScx42E786k-Ba4YptQfv8ujCWY_DuN1k4o" diff --git a/articles/introducing-trinity.md b/articles/introducing-trinity.md index 0e72d3e..b9e1565 100644 --- a/articles/introducing-trinity.md +++ b/articles/introducing-trinity.md @@ -1,7 +1,7 @@ --- authors: ["Yanis Meziane"] title: "Introducing Trinity" -image: "trinity.webp" +image: "/articles/introducing-trinity/trinity.webp" tldr: "Two-Party Computation for the ZK Era" date: "2025-04-28" tags: ["zk", "mpc"] @@ -50,7 +50,7 @@ Trinity follows the same broad structure — but introduces key innovations to m Specifically, Trinity leverages: - 🔑 **Laconic OT**: Based on the [Witness Encryption for KZG](https://eprint.iacr.org/2024/264) paper, Trinity replaces traditional OT with a KZG-based commitment scheme. -- 🧩 **Garbled Circuits**: Powered by the [mpz](https://github.com/privacy-scaling-explorations/mpz) library. +- 🧩 **Garbled Circuits**: Powered by the [mpz](https://github.com/privacy-scaling-explorations/mpz) library. - 📦 **KZG Commitments**: - Alice commits to her input using a polynomial commitment (KZG), without targeting Bob specifically. These commitments are reusable across sessions or peers. - Since some ZK provers (like [Halo2](https://github.com/privacy-scaling-explorations/halo2)) use KZG already, this means Alice can also **prove** her committed input in zero-knowledge — if she wants. diff --git a/articles/lattice-based-proof-systems.md b/articles/lattice-based-proof-systems.md index 2d3dd24..afdeb55 100644 --- a/articles/lattice-based-proof-systems.md +++ b/articles/lattice-based-proof-systems.md @@ -1,7 +1,7 @@ --- authors: ["Miha Stopar"] title: "Lattice-Based Proof Systems" -image: "lattice-based-proof-systems-cover.webp" +image: "/articles/lattice-based-proof-systems/lattice-based-proof-systems-cover.webp" tldr: "This post was written by PSE researcher Miha Stopar." date: "2025-02-18" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/4OyAht_dHsVT1MgcZTwrK2qJ-bwxpINcpBmLNfF4I2E" diff --git a/articles/learnings-from-the-kzg-ceremony.md b/articles/learnings-from-the-kzg-ceremony.md index 653fe86..bd4e369 100644 --- a/articles/learnings-from-the-kzg-ceremony.md +++ b/articles/learnings-from-the-kzg-ceremony.md @@ -1,7 +1,7 @@ --- authors: ["Nico"] title: "Learnings from the KZG Ceremony" -image: "learnings-from-the-kzg-ceremony-cover.webp" +image: "/articles/learnings-from-the-kzg-ceremony/learnings-from-the-kzg-ceremony-cover.webp" tldr: "This post was authored by [Nico](https://github.com/NicoSerranoP/), a frontend developer working in the [Privacy & Scaling Explorations Team (PSE)](https://appliedzkp.org/). Nico summarizes the learnings and challenges he faced during the development and deployment of the [KZG Ceremony](https://ceremony.ethereum.org/)." date: "2023-07-11" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/naTdx-u7kyirczTLSAnWwH6ZdedfTQu1yCWQj1m_n-E" diff --git a/articles/mopro-comparison-of-circom-provers.md b/articles/mopro-comparison-of-circom-provers.md index c72ffef..e81d5c6 100644 --- a/articles/mopro-comparison-of-circom-provers.md +++ b/articles/mopro-comparison-of-circom-provers.md @@ -1,7 +1,7 @@ --- authors: ["Vivian Jeng"] title: "Mopro: Comparison of Circom Provers" -image: "mopro-comparison-of-circom-provers-cover.webp" +image: "/articles/mopro-comparison-of-circom-provers/mopro-comparison-of-circom-provers-cover.webp" tldr: "This post was written by [Vivian Jeng](https://mirror.xyz/privacy-scaling-explorations.eth/GLbuCflH0hu_DncKxiC2No5w3LZJAGw4QaCB-HYD5e0), a developer on the Mopro team." date: "2025-01-21" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/GLbuCflH0hu_DncKxiC2No5w3LZJAGw4QaCB-HYD5e0" diff --git a/articles/p0tion-v10-release.md b/articles/p0tion-v10-release.md index cc9758f..3f720bd 100644 --- a/articles/p0tion-v10-release.md +++ b/articles/p0tion-v10-release.md @@ -1,7 +1,7 @@ --- authors: ["MACI Team", "Trusted Setup Team", "RLN Team", "Design Team"] title: "p0tion V1.0 Release" -image: "cover.webp" +image: "/articles/p0tion-v10-release/cover.webp" tldr: "P0tion was built with love by: MACI, Trusted Setup, RLN, and Design Teams at PSE." date: "2023-08-08" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/TuLZRdgCQsydC8JJgCNH4F7GzifRBQ6fr31DHGLFVWM" diff --git a/articles/rate-limiting-nullifier-rln.md b/articles/rate-limiting-nullifier-rln.md index ef35e6b..b7d146c 100644 --- a/articles/rate-limiting-nullifier-rln.md +++ b/articles/rate-limiting-nullifier-rln.md @@ -1,7 +1,7 @@ --- authors: ["curryrasul"] title: "Rate-Limiting Nullifier (RLN)" -image: "rate-limiting-nullifier-rln-cover.webp" +image: "/articles/rate-limiting-nullifier-rln/rate-limiting-nullifier-rln-cover.webp" tldr: "This post was authored by [@curryrasul](https://twitter.com/curryrasul)." date: "2023-08-01" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/iCLmH1JVb7fDqp6Mms2NR001m2_n5OOSHsLF2QrxDnQ" diff --git a/articles/reflecting-on-maci-platform.md b/articles/reflecting-on-maci-platform.md index dbfb1b0..645998d 100644 --- a/articles/reflecting-on-maci-platform.md +++ b/articles/reflecting-on-maci-platform.md @@ -1,11 +1,19 @@ --- -authors: ["PSE Team"] +authors: ["PSE Team"] title: "Reflecting on MACI Platform: What We Built, Learned, and What’s Next" -image: "reflecting-on-maci-platform.png" +image: "/articles/reflecting-on-maci-platform/reflecting-on-maci-platform.png" tldr: "After a year of development and experimentation, the MACI Platform project is being sunset. In this retrospective, we share what we built, what we learned, and how the work can continue." -date: "2025-05-01" -canonical: "" -tags: ["MACI", "Privacy", "Public Goods", "RetroPGF", "Zero Knowledge", "Governance"] +date: "2025-05-01" +canonical: "" +tags: + [ + "MACI", + "Privacy", + "Public Goods", + "RetroPGF", + "Zero Knowledge", + "Governance", + ] --- # Reflecting on MACI Platform: What We Built, Learned, and What’s Next @@ -105,4 +113,4 @@ And our partners in the Ethereum and PGF ecosystem who took a bet on using somet The platform development may pause, but the need for privacy-preserving voting remains. We believe that one day, MACI—or protocols like it—will be foundational infrastructure for democratic coordination onchain and offchain. Until then, we’ll keep building, listening, and sharing what we learn. -_– The MACI Platform Team_ \ No newline at end of file +_– The MACI Platform Team_ diff --git a/articles/retrospective-summa.md b/articles/retrospective-summa.md index 4bf3f88..cc957dd 100644 --- a/articles/retrospective-summa.md +++ b/articles/retrospective-summa.md @@ -1,7 +1,7 @@ --- authors: ["Summa Team"] title: "Retrospective: Summa" -image: "retrospective-summa-cover.webp" +image: "/articles/retrospective-summa/retrospective-summa-cover.webp" tldr: "This post was authored by the Summa team." date: "2025-02-10" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/HRlshQwWxo66EMt3lwk6PSuDkitJCr_-ltCETZHNeu0" diff --git a/articles/retrospective-trusted-setups-and-p0tion-project.md b/articles/retrospective-trusted-setups-and-p0tion-project.md index 3bd3ff7..89ac4c3 100644 --- a/articles/retrospective-trusted-setups-and-p0tion-project.md +++ b/articles/retrospective-trusted-setups-and-p0tion-project.md @@ -1,7 +1,7 @@ --- authors: ["PSE Trusted Setup Team"] title: "Retrospective: Trusted Setups and P0tion Project" -image: "retrospective-trusted-setups-and-p0tion-project-cover.webp" +image: "/articles/retrospective-trusted-setups-and-p0tion-project/retrospective-trusted-setups-and-p0tion-project-cover.webp" tldr: "This post was written by the PSE Trusted Setup Team." date: "2025-01-15" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/Cf9nYvSlATGks8IcFaHQe3H5mgZ_Va767Zk5I8jPYXk" diff --git a/articles/secure-multi-party-computation.md b/articles/secure-multi-party-computation.md index f44c29c..d06bdb4 100644 --- a/articles/secure-multi-party-computation.md +++ b/articles/secure-multi-party-computation.md @@ -1,7 +1,7 @@ --- authors: ["Brechy"] title: "Secure Multi-Party Computation" -image: "secure-multi-party-computation-cover.webp" +image: "/articles/secure-multi-party-computation/secure-multi-party-computation-cover.webp" tldr: "This post was written by [Brechy](https://github.com/brech1). Thanks [Nam Ngo](https://github.com/namnc) for the feedback and review!" date: "2024-08-06" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/v_KNOV_NwQwKV0tb81uBS4m-rbs-qJGvCx7WvwP4sDg" diff --git a/articles/self-sovereign-identity-programmable-cryptography-challenges-ahead.md b/articles/self-sovereign-identity-programmable-cryptography-challenges-ahead.md index 60200a1..159d079 100644 --- a/articles/self-sovereign-identity-programmable-cryptography-challenges-ahead.md +++ b/articles/self-sovereign-identity-programmable-cryptography-challenges-ahead.md @@ -1,7 +1,7 @@ --- authors: ["0xZoey"] title: "Self-Sovereign Identity & Programmable Cryptography: Challenges Ahead" -image: "self-sovereign-identity-programmable-cryptography-challenges-ahead-cover.webp" +image: "/articles/self-sovereign-identity-programmable-cryptography-challenges-ahead/self-sovereign-identity-programmable-cryptography-challenges-ahead-cover.webp" tldr: "This post was written by [0xZoey](https://twitter.com/0xZoey), with contributions from Chance." date: "2025-01-23" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/zRM7qQSt_igfoSxdSa0Pts9MFdAoD96DD3m43bPQJT8" diff --git a/articles/semaphore-community-grants-awarded-projects.md b/articles/semaphore-community-grants-awarded-projects.md index cb819c8..56bac53 100644 --- a/articles/semaphore-community-grants-awarded-projects.md +++ b/articles/semaphore-community-grants-awarded-projects.md @@ -1,7 +1,7 @@ --- authors: ["PSE Team"] title: "Semaphore Community Grants: Awarded Projects" -image: "cover.webp" +image: "/articles/semaphore-community-grants-awarded-projects/cover.webp" tldr: "" date: "2023-01-24" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/5w1v6rxpP-E03rWDr3RliPyFJkptQwIPzet3Vb5jdcI" diff --git a/articles/semaphore-community-grants.md b/articles/semaphore-community-grants.md index a21fd13..f08c5fd 100644 --- a/articles/semaphore-community-grants.md +++ b/articles/semaphore-community-grants.md @@ -1,7 +1,7 @@ --- authors: ["PSE Team"] title: "Semaphore Community Grants" -image: "cover.webp" +image: "/articles/semaphore-community-grants/cover.webp" tldr: "" date: "2022-09-21" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/g5WjOtK4R3rYfLKyqpSXsbNBcj36jzsjgnV2KT2rthM" diff --git a/articles/semaphore-v3-announcement.md b/articles/semaphore-v3-announcement.md index 63bfd35..7d8b064 100644 --- a/articles/semaphore-v3-announcement.md +++ b/articles/semaphore-v3-announcement.md @@ -1,7 +1,7 @@ --- authors: ["PSE Team"] title: "Semaphore v3 Announcement" -image: "cover.webp" +image: "/articles/semaphore-v3-announcement/cover.webp" tldr: "" date: "2023-02-09" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/Yi4muh-vzDZmIqJIcM9Mawu2e7jw8MRnwxvhFcyfns8" diff --git a/articles/the-next-chapter-for-zkevm-community-edition.md b/articles/the-next-chapter-for-zkevm-community-edition.md index f240045..0953a64 100644 --- a/articles/the-next-chapter-for-zkevm-community-edition.md +++ b/articles/the-next-chapter-for-zkevm-community-edition.md @@ -1,7 +1,7 @@ --- authors: ["PSE Team"] title: "The next chapter for zkEVM Community Edition" -image: "the-next-chapter-for-zkevm-community-edition-cover.webp" +image: "/articles/the-next-chapter-for-zkevm-community-edition/the-next-chapter-for-zkevm-community-edition-cover.webp" tldr: "" date: "2024-06-05" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/hqLMwLfKmQLj773QCRLTOT-Z8sSUaTEfQpBSdTbitbs" diff --git a/articles/the-zk-ecdsa-landscape.md b/articles/the-zk-ecdsa-landscape.md index b743fdc..597a2e4 100644 --- a/articles/the-zk-ecdsa-landscape.md +++ b/articles/the-zk-ecdsa-landscape.md @@ -1,7 +1,7 @@ --- authors: ["Blake M Scurr"] title: "The zk-ECDSA Landscape" -image: "the-zk-ecdsa-landscape-cover.webp" +image: "/articles/the-zk-ecdsa-landscape/the-zk-ecdsa-landscape-cover.webp" tldr: "This post was authored by grantee [Blake M Scurr](https://github.com/BlakeMScurr). His mandate was to explore zk-ECDSA, build applications with zk-ECDSA, and contribute to ZKPs to make this vision come true." date: "2023-04-18" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/djxf2g9VzUcss1e-gWIL2DSRD4stWggtTOcgsv1RlxY" diff --git a/articles/tlsnotary-updates.md b/articles/tlsnotary-updates.md index 402511f..f374ee1 100644 --- a/articles/tlsnotary-updates.md +++ b/articles/tlsnotary-updates.md @@ -1,7 +1,7 @@ --- authors: ["sinu"] title: "TLSNotary Updates" -image: "tlsnotary-updates-cover.webp" +image: "/articles/tlsnotary-updates/tlsnotary-updates-cover.webp" tldr: "This post was written by [sinu](https://github.com/sinui0)." date: "2023-09-19" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/T4MR2PgBzBmN2I3dhDJpILXkQsqZp1Bp8GSm_Oo3Vnw" diff --git a/articles/towards_a_quantum-safe_p2p_for_ethereum.md b/articles/towards_a_quantum-safe_p2p_for_ethereum.md index 2faddce..165c4db 100644 --- a/articles/towards_a_quantum-safe_p2p_for_ethereum.md +++ b/articles/towards_a_quantum-safe_p2p_for_ethereum.md @@ -1,7 +1,7 @@ --- authors: ["Adria Bienvenido, Guorong Du"] title: "Towards a Quantum-Safe P2P for Ethereum" -image: "towards_a_quantum-safe_p2p_for_ethereum-cover.webp" +image: "/articles/towards_a_quantum-safe_p2p_for_ethereum/towards_a_quantum-safe_p2p_for_ethereum-cover.webp" tldr: "Integrating post‑quantum cryptography into Ethereum’s P2P stack is currently impractical—PQ keys and signatures are too large for UDP‑based discovery and transport—though future research on QUIC migration, composite keys, and protocol redesign may offer viable paths forward." date: "2025-04-22" --- diff --git a/articles/unirep-ceremony-an-invitation-to-the-celestial-call-and-unirep-v2.md b/articles/unirep-ceremony-an-invitation-to-the-celestial-call-and-unirep-v2.md index 702d111..db7d94d 100644 --- a/articles/unirep-ceremony-an-invitation-to-the-celestial-call-and-unirep-v2.md +++ b/articles/unirep-ceremony-an-invitation-to-the-celestial-call-and-unirep-v2.md @@ -1,7 +1,7 @@ --- authors: ["Chance"] title: "UniRep Ceremony: An Invitation to the Celestial Call and UniRep v2" -image: "unirep-ceremony-an-invitation-to-the-celestial-call-and-unirep-v2-cover.webp" +image: "/articles/unirep-ceremony-an-invitation-to-the-celestial-call-and-unirep-v2/unirep-ceremony-an-invitation-to-the-celestial-call-and-unirep-v2-cover.webp" tldr: "The initial ideas for this blog post originated from UniRep core contributor [Chance](https://github.com/vimwitch). Additional write up and review by [CJ](https://github.com/CJ-Rose), [Chiali](https://github.com/ChialiT), [Vivian](https://github.com/vivianjeng), [Doris](https://github.com/kittybest), and [Anthony](https://github.com/AnthonyMadia)." date: "2023-10-24" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/z-gW2RtgFTV18ZkRGED2XKLn_wDd-SwMSs17vWQwfLs" diff --git a/articles/unirep-protocol.md b/articles/unirep-protocol.md index 6bc824d..eac7f05 100644 --- a/articles/unirep-protocol.md +++ b/articles/unirep-protocol.md @@ -1,7 +1,7 @@ --- authors: ["PSE Team"] title: "UniRep Protocol" -image: "cover.webp" +image: "/articles/unirep-protocol/cover.webp" tldr: "" date: "2023-01-04" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/FCVVfy-TQ6R7_wavKj1lCr5dd1zqRvwjnDOYRM5NtsE" diff --git a/articles/unleashing-potential-introducing-the-pse-core-program.md b/articles/unleashing-potential-introducing-the-pse-core-program.md index 3072d80..1ab1421 100644 --- a/articles/unleashing-potential-introducing-the-pse-core-program.md +++ b/articles/unleashing-potential-introducing-the-pse-core-program.md @@ -1,7 +1,7 @@ --- authors: ["PSE EcoDev Team"] title: "Unleashing Potential: Introducing the PSE Core Program" -image: "unleashing-potential-introducing-the-pse-core-program-cover.webp" +image: "/articles/unleashing-potential-introducing-the-pse-core-program/unleashing-potential-introducing-the-pse-core-program-cover.webp" tldr: "This post was written by the PSE EcoDev Team." date: "2024-04-24" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/PvNKlzp8Xlaic_DeIFEW20-ai4eN1AqJO26d4YRqWwM" diff --git a/articles/web2-nullifiers-using-voprf.md b/articles/web2-nullifiers-using-voprf.md index 3af2b56..4f50960 100644 --- a/articles/web2-nullifiers-using-voprf.md +++ b/articles/web2-nullifiers-using-voprf.md @@ -1,7 +1,7 @@ --- authors: ["Rasul Ibragimov"] title: "Web2 Nullifiers using vOPRF" -image: "web2-nullifiers-using-voprf-cover.webp" +image: "/articles/web2-nullifiers-using-voprf/web2-nullifiers-using-voprf-cover.webp" tldr: "This post was written by PSE researcher Rasul Ibragimov. Big thanks to Lev Soukhanov for explaining the majority of this to me - without him, this blog post wouldn't exist." date: "2025-01-30" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/L4LSAWflNocKolhV6ZVaqt3KDxdSjFPNSv0U5SCc__0" diff --git a/articles/why-we-cant-build-perfectly-secure-multi-party-applications-yet.md b/articles/why-we-cant-build-perfectly-secure-multi-party-applications-yet.md index 34658ad..58ce135 100644 --- a/articles/why-we-cant-build-perfectly-secure-multi-party-applications-yet.md +++ b/articles/why-we-cant-build-perfectly-secure-multi-party-applications-yet.md @@ -1,7 +1,7 @@ --- authors: ["Enrico Bottazzi"] title: "Why We Can't Build Perfectly Secure Multi-Party Applications (yet)" -image: "why-we-cant-build-perfectly-secure-multi-party-applications-yet-cover.webp" +image: "/articles/why-we-cant-build-perfectly-secure-multi-party-applications-yet/why-we-cant-build-perfectly-secure-multi-party-applications-yet-cover.webp" tldr: "This post was written by PSE researcher Enrico Bottazzi. Thanks to Pia Park for discussions and reviews." date: "2025-01-14" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/nXUhkZ84ckZi_5mYRFCCKgkLVFAmM2ECdEFCQul2jPs" diff --git a/articles/zero-to-start-applied-fully-homomorphic-encryption-fhe-part-1.md b/articles/zero-to-start-applied-fully-homomorphic-encryption-fhe-part-1.md index 80d04ee..a2e1339 100644 --- a/articles/zero-to-start-applied-fully-homomorphic-encryption-fhe-part-1.md +++ b/articles/zero-to-start-applied-fully-homomorphic-encryption-fhe-part-1.md @@ -1,7 +1,7 @@ --- authors: ["0xZoey"] title: "Zero to Start: Applied Fully Homomorphic Encryption (FHE) Part 1" -image: "zero-to-start-applied-fully-homomorphic-encryption-fhe-part-1-cover.webp" +image: "/articles/zero-to-start-applied-fully-homomorphic-encryption-fhe-part-1/zero-to-start-applied-fully-homomorphic-encryption-fhe-part-1-cover.webp" tldr: "This post was written by [0xZoey](https://twitter.com/0xZoey). Special thanks to [Janmajaya](https://twitter.com/Janmajaya_mall), [Enrico](https://twitter.com/backaes?lang=en), and [Owen](https://twitter.com/omurovec) who generously gave their time and expertise to review this piece. Your valuable contributions and feedback have greatly enhanced the quality and depth of this work. /n/n Find [Part 2: Fundamental Concepts, FHE Development, Applied FHE, Challenges and Open Problems](https://mirror.xyz/privacy-scaling-explorations.eth/wQZqa9acMdGS7LTXmKX-fR05VHfkgFf9Wrjso7XxDzs) here…" date: "2023-12-21" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/D8UHFW1t48x2liWb5wuP6LDdCRbgUH_8vOFvA0tNDJA" diff --git a/articles/zero-to-start-applied-fully-homomorphic-encryption-fhe-part-2.md b/articles/zero-to-start-applied-fully-homomorphic-encryption-fhe-part-2.md index ef8e753..78697a1 100644 --- a/articles/zero-to-start-applied-fully-homomorphic-encryption-fhe-part-2.md +++ b/articles/zero-to-start-applied-fully-homomorphic-encryption-fhe-part-2.md @@ -1,7 +1,7 @@ --- authors: ["0xZoey"] title: "Zero to Start: Applied Fully Homomorphic Encryption (FHE) Part 2" -image: "zero-to-start-applied-fully-homomorphic-encryption-fhe-part-2-cover-1.webp" +image: "/articles/zero-to-start-applied-fully-homomorphic-encryption-fhe-part-2/zero-to-start-applied-fully-homomorphic-encryption-fhe-part-2-cover-1.webp" tldr: "This post was written by [0xZoey](https://twitter.com/0xZoey), with contributions from Chance. /n This is an extension of [Part 1: An Introduction to FHE, ZKPs & MPC, and The State of FHE Development](https://mirror.xyz/privacy-scaling-explorations.eth/D8UHFW1t48x2liWb5wuP6LDdCRbgUH_8vOFvA0tNDJA)." date: "2023-12-21" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/wQZqa9acMdGS7LTXmKX-fR05VHfkgFf9Wrjso7XxDzs" diff --git a/articles/zkevm-community-edition-part-1-introduction.md b/articles/zkevm-community-edition-part-1-introduction.md index 3e1b3d7..f386985 100644 --- a/articles/zkevm-community-edition-part-1-introduction.md +++ b/articles/zkevm-community-edition-part-1-introduction.md @@ -1,7 +1,7 @@ --- authors: ["PSE Team"] title: "zkEVM Community Edition Part 1: Introduction" -image: "zkevm-community-edition-part-1-introduction-cover-1.webp" +image: "/articles/zkevm-community-edition-part-1-introduction/zkevm-community-edition-part-1-introduction-cover-1.webp" tldr: "" date: "2023-05-23" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/I5BzurX-T6slFaPbA4i3hVrO7U2VkBR45eO-N3CSnSg" diff --git a/articles/zkevm-community-edition-part-2-components.md b/articles/zkevm-community-edition-part-2-components.md index d3c29ca..64c3c73 100644 --- a/articles/zkevm-community-edition-part-2-components.md +++ b/articles/zkevm-community-edition-part-2-components.md @@ -1,7 +1,7 @@ --- authors: ["PSE Team"] title: "zkEVM Community Edition Part 2: Components" -image: "zkevm-community-edition-part-2-components-cover.webp" +image: "/articles/zkevm-community-edition-part-2-components/zkevm-community-edition-part-2-components-cover.webp" tldr: "This series of articles intends to provide an overview of the zkEVM Community Edition in a way that is broadly accessible. Part 2 is a summary of the common components used in most zkEVMs." date: "2023-05-23" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/AW854RXMqS3SU8WCA7Yz-LVnTXCOjpwhmwUq30UNi1Q" diff --git a/articles/zkevm-community-edition-part-3-logic-and-structure.md b/articles/zkevm-community-edition-part-3-logic-and-structure.md index a900d96..680648d 100644 --- a/articles/zkevm-community-edition-part-3-logic-and-structure.md +++ b/articles/zkevm-community-edition-part-3-logic-and-structure.md @@ -1,7 +1,7 @@ --- authors: ["PSE Team"] title: "zkEVM Community Edition Part 3: Logic and Structure" -image: "zkevm-community-edition-part-3-logic-and-structure-cover.webp" +image: "/articles/zkevm-community-edition-part-3-logic-and-structure/zkevm-community-edition-part-3-logic-and-structure-cover.webp" tldr: "This series intends to provide an overview of the zkEVM Community Edition in a way that is broadly accessible. Part 3 reviews the general logic and structure of the zkEVM Community Edition." date: "2023-05-23" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/shl8eMBiObd6_AUBikXZrjKD4fibI6xUZd7d9Yv5ezE" diff --git a/articles/zkitter-an-anon-friendly-social-network.md b/articles/zkitter-an-anon-friendly-social-network.md index a3d9bd1..804b375 100644 --- a/articles/zkitter-an-anon-friendly-social-network.md +++ b/articles/zkitter-an-anon-friendly-social-network.md @@ -1,7 +1,7 @@ --- authors: ["PSE Team"] title: "Zkitter: An Anon-friendly Social Network" -image: "cover.webp" +image: "/articles/zkitter-an-anon-friendly-social-network/cover.webp" tldr: "" date: "2023-01-11" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/P4jDH1gLrVQ-DP5VyIKQrlPAJUTDhtXZkFl2vp8ewSg" diff --git a/articles/zkml-bridging-aiml-and-web3-with-zero-knowledge-proofs.md b/articles/zkml-bridging-aiml-and-web3-with-zero-knowledge-proofs.md index c299341..142d2d3 100644 --- a/articles/zkml-bridging-aiml-and-web3-with-zero-knowledge-proofs.md +++ b/articles/zkml-bridging-aiml-and-web3-with-zero-knowledge-proofs.md @@ -1,7 +1,7 @@ --- authors: ["drCathieSo.eth"] title: "ZKML: Bridging AI/ML and Web3 with Zero-Knowledge Proofs" -image: "zkml-bridging-aiml-and-web3-with-zero-knowledge-proofs-cover.webp" +image: "/articles/zkml-bridging-aiml-and-web3-with-zero-knowledge-proofs/zkml-bridging-aiml-and-web3-with-zero-knowledge-proofs-cover.webp" tldr: "This post was authored by [drCathieSo.eth](https://twitter.com/drCathieSo_eth) and was originally published [here](https://hackmd.io/@cathie/zkml)." date: "2023-05-02" canonical: "https://mirror.xyz/privacy-scaling-explorations.eth/K88lOS4XegJGzMoav9K5bLuT9Zhn3Hz2KkhB3ITq-m8" diff --git a/components/blog/blog-article-card.tsx b/components/blog/blog-article-card.tsx index a43ad90..f7a835e 100644 --- a/components/blog/blog-article-card.tsx +++ b/components/blog/blog-article-card.tsx @@ -22,8 +22,7 @@ export const BlogArticleCard = ({ date, authors, }: Article) => { - const imageUrl = - (image ?? "")?.length > 0 ? `/articles/${id}/${image}` : "/fallback.webp" + const imageUrl = image && (image ?? "")?.length > 0 ? image : "/fallback.webp" return (
diff --git a/components/blog/blog-recent-articles.tsx b/components/blog/blog-recent-articles.tsx index f1ac35b..bea0484 100644 --- a/components/blog/blog-recent-articles.tsx +++ b/components/blog/blog-recent-articles.tsx @@ -13,8 +13,6 @@ export async function BlogRecentArticles({ lang }: { lang: any }) { const lastArticle = articles[0] const otherArticles = articles.slice(1) - const imageUrl = `/articles/${lastArticle.id}/${lastArticle.image}` - return (
@@ -27,12 +25,12 @@ export async function BlogRecentArticles({ lang }: { lang: any }) {
-
+