# Cryptoblots by Daïm Aggott-Hönsch

## The work and its context

Cryptoblots begins with bilateral symmetry and leaves recognition to the viewer. Coloured forms hover on black, folded around a vertical axis, with protrusions, cavities and looping edges that encourage the eye to invent creatures or objects. The invitation is unusually direct: the project description names pareidolia and identifies the work as an algorithmic homage to Hermann Rorschach's inkblots. It is an artwork about the production of associations, not evidence of a psychological diagnosis. [^S01]

Daïm Aggott-Hönsch's December 2020 Curated project is numbered 3 on Art Blocks' second Ethereum contract. The current index reports 1,921 invocations. The [artist dossier](https://ab5d.xyz/artists/daim-aggott-honsch/) covers the wider mathematical practice; this essay examines how one constrained drawing process makes such suggestive, unstable silhouettes. The four selected outputs show that symmetry can create coherence even when the component shapes remain difficult to name. [^S01][^S05][^S06][^S07][^S08]

## Conception and development

In an interview recorded in October 2022 and published the following month, Aggott-Hönsch said that the algorithm's origins preceded his entry into crypto art. Early versions were greyscale. He described colour as making the works more immediately appealing while also steering the kinds of interpretation viewers bring to them. The same interview emphasizes that the shapes were not intended in advance to depict particular things. [^S03]

This distinction keeps the reading open. If a blot suggests a mask or insect, that resemblance belongs to the encounter between the viewer and the generated form; it should not be retroactively assigned to the artist as a planned subject. The artist's recollection of a collector naming one work also establishes that interpretation became part of the series' reception. It does not mean every subsequent nickname is official metadata. [^S03]

The original project website currently resolves to a hosting placeholder, so it cannot supply the missing early development chronology. The remaining evidence is nonetheless substantial: the artist's retrospective account, the project statement, the inspected script and the outputs. Their different roles are kept separate throughout this account. [^S01][^S02][^S03]

## How the work was constructed

The p5.js script derives a seed from the token hash and advances it through a compact pseudo-random procedure. It chooses whether to construct one, two or three layered blots, selects colours and sets an initial number of points. These choices are repeatable from the same input. The code is not analyzing a viewer's response or searching an image database for recognizable objects. Its forms emerge from coordinate generation and mirroring. [^S01][^S02]

The core coordinate procedure is a bounded random walk. Each new horizontal or vertical coordinate starts from the previous one and adds a limited displacement. If a trial would exceed the allowed region, the routine tries another displacement. This gives successive points a local relationship, rather than scattering them independently over the entire square. The resulting path can wander, double back and form narrow necks or broad lobes. [^S02]

The drawing routine then takes the path and adds a reflected version in reverse order around the vertical centre. This is the literal source of bilateral symmetry. A single irregular contour becomes a paired form, and the pairing encourages the eye to infer a body with corresponding left and right parts. Recognition is not programmed directly; it becomes plausible because symmetry is a powerful organizing cue. That final perceptual explanation is an interpretation of the code and observed images. [^S02][^S05][^S06]

The script applies curved vertices rather than joining every point with a hard straight segment. It also adjusts the generated coordinates before drawing. Edge treatment combines a fill with successively adjusted strokes, followed by a small blur. These operations help account for the softly modelled outline visible in the previews. The effect can look organic even though the procedure is a sequence of explicit numerical choices. [^S02]

Colour selection uses named arrays and a weighted acceptance routine. The available colours are therefore not an unrestricted sampling of every possible RGB value. The routine's weighting also means that an equal list of names should not be mistaken for equal occurrence probabilities. No population-level rarity calculation is made here. In layered outputs, the script reduces the point count for subsequent blots, allowing differently complicated forms to overlap within one token. [^S02]

The drawing is prepared in an offscreen buffer with a minimum working size of 1,800 pixels, then displayed at the viewport's square size. This separates internal preparation from final display dimensions. It also explains why the preview is a rendering of a procedure, rather than the canonical source of all future appearances. The versioned p5 dependency is part of that procedure's environment. [^S01][^S02][^S04]

The code generates three colour-name entries during setup even when fewer blot layers are drawn. Consequently, a reported list of colour choices needs to be distinguished from an audit of every visible coloured region. The sample's index features are useful descriptors, but the essay's colour observations come from the images themselves. This is a small example of why direct inspection matters: metadata is a guide to a work, not a replacement for looking. [^S02][^S05][^S06][^S07][^S08]

## The mint

The live Art Blocks index, observed on 2026-09-17, records 1,921 invocations against a current maximum of 1,921. The first indexed mint is 2020-12-12T16:30:17+00:00; the second is 2020-12-12T20:00:24+00:00. Its activation field reads 2020-12-12T19:30:25+00:00, while the scheduled-start field reads 2020-12-12T20:00:24+00:00. These are different recorded events, not interchangeable definitions of launch. The current maximum is not by itself evidence of the originally announced edition. [^S01]

The indexed completion field is 2021-02-23T22:12:31+00:00. These observations establish the platform's recorded chronology, rather than a reconstruction of every public purchase. They do not identify which mints were artist, reserved or administrative allocations. Accordingly, no precise public sellout duration is asserted here. The recorded price setting at the research cutoff is 62 DAI; it is a later configuration observation, not a verified opening price or proof that each recipient paid that amount. Gas, transfers and resale consideration are separate. Historical price changes and allocation classes remain questions for a transaction-level follow-up. [^S01]

The currency field is especially important here: it reports DAI, not ETH. Reading the integer price field as an ether amount would misdescribe the record. The indexed first-mint and completion dates span December 2020 to February 2021, a very different chronology from the concentrated same-day records of several neighbouring projects. This establishes a recorded mint interval, not continuous public availability or proof of an unchanged price throughout that interval. No specific technical incident is asserted without a dated source. [^S01]

## Copyright and licensing

The project reports the exact artwork label “NFT License”, with no linked terms, as observed on 2026-09-17. Its operative permissions and version remain unverified, so the rights category is unknown. The label is preserved rather than silently mapped to a similarly named contract or a blanket permission to reproduce the work. [^S01]

The rendering dependency is p5.js 1.0.0; its upstream licence file contains LGPL 2.1. That dependency licence does not establish the artist script’s licence. No separate, explicit grant for the project code was found in the inspected script and project record. Artwork, artist code and library rights therefore remain separate. [^S01][^S02][^S04]

## Close reading of four outputs

The comparison uses editions 0, 1, 10 and 20, with full token IDs 3000000, 3000001, 3000010 and 3000020 on Ethereum contract 0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270. These are a preselected early group. They include indexed Unary and Binary outputs but do not cover every layer configuration or colour family. All observations concern the still previews. [^S05][^S06][^S07][^S08]

#0 combines red and yellow forms around the central axis. The red middle suggests a narrow torso or mask, while yellow lateral extensions look almost suspended from it. Large black openings remain between those extensions and the centre, making absence as important as the coloured contour. The symmetry encourages a single-object reading, yet the overlaps keep separating that object into distinct layers. Calling it a creature is one possible response; the same arrangement could be read as an emblem or folded ornament. [^S05]

#1 uses grey and pale outlines. Its lower form opens into broad lobes while smaller shapes rise along the centre, producing an apparent hierarchy of body and head. Because there is no strong chromatic contrast between layers, contour and internal crossings carry most of the reading. The grey also keeps more associations available: it does not supply the red or green cues that might push a viewer toward flesh, leaves or insects. This comparison echoes the artist's stated interest in the effect of colour without claiming to reproduce an early greyscale prototype. [^S06][^S03]

#10 puts green and yellow around a conspicuous central black opening. The surrounding shapes make a frame-like arrangement, so the eye may first register an empty interior before identifying a body. The upper yellow forms produce pointed peaks, while smaller green shapes gather below the void. This is a useful counterexample to the assumption that every blot is a compact solid figure. The random-walk contour and layered overlap can make emptiness appear to be the organizing subject. [^S07]

#20 is purple and comparatively spare. Two broad upper lobes flank a small central junction, with a narrow lower extension and thin diagonals. It can suggest wings, but the resemblance is reversible: the upper shapes can also read as folded fabric or two separate panels. The reduced number of conspicuous forms makes the pairing mechanism particularly legible. The work's ambiguity does not depend on maximum visual complexity. [^S08]

Across the group, the black field offers no scale, horizon or setting. That absence frees the shapes from the obligation to fit into a plausible world. It also gives each contour a strong visual boundary. The system generates finite coloured forms, while the viewer supplies possible identities and contexts. This division of work is the series' central encounter. [^S05][^S06][^S07][^S08]

## Significance and limitations

Cryptoblots distinguishes itself by making interpretive uncertainty explicit. Its algorithm does not have to know what an insect, mask or emblem looks like to produce a shape that recalls one. Local wandering, reflection and layering establish enough structure for recognition to begin, while leaving enough ambiguity for it to change. The artist's account supports that open-endedness; the four examples show several materially different ways it occurs. [^S02][^S03]

Unresolved research questions:

- Recover the launch-era DAI price, any later changes and the original maximum.
- Reconstruct public, artist and reserved mints across the recorded interval.
- Locate operative NFT License terms and separate code permissions.
- Recover an archived project website and compare indexed code with chain data.

[^S01]: Art Blocks. [Cryptoblots project record and Art Blocks index](https://www.artblocks.io/collection/cryptoblots-by-daim-aggott-honsch). Accessed 2026-09-17.
[^S02]: Daïm Aggott-Hönsch. [Cryptoblots artist script](https://artblocks-mainnet.hasura.app/v1/graphql). Accessed 2026-09-17.
[^S03]: Max Cohen / Museum of Crypto Art. [The Discovery of Math, Part 2](https://museumofcryptoart.medium.com/the-discovery-of-math-a-sitdown-with-da%C3%AFm-aggot-h%C3%B6nsch-part-2-cba151b93051). Published 2022-11-09. Accessed 2026-09-17.
[^S04]: p5.js contributors. [p5.js 1.0.0 licence](https://raw.githubusercontent.com/processing/p5.js/1.0.0/license.txt). Accessed 2026-09-17.
[^S05]: Daïm Aggott-Hönsch. [Cryptoblots #0](https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/3000000). Published 2020-12-12. Accessed 2026-09-17.
[^S06]: Daïm Aggott-Hönsch. [Cryptoblots #1](https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/3000001). Published 2020-12-12. Accessed 2026-09-17.
[^S07]: Daïm Aggott-Hönsch. [Cryptoblots #10](https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/3000010). Published 2020-12-12. Accessed 2026-09-17.
[^S08]: Daïm Aggott-Hönsch. [Cryptoblots #20](https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/3000020). Published 2020-12-12. Accessed 2026-09-17.
