From 07eb723e9bf802d82f86199ca8becb0ccf84c91c Mon Sep 17 00:00:00 2001
From: byakugon
Date: Sat, 29 Nov 2025 20:58:46 +0000
Subject: [PATCH] Added Ashigaru Guides, Passport Core Guides and Dojo Guide
---
articles.md | 90 +-
ashigaru-mobile.md | 874 ++++++++++++++
ashigaru-terminal-whirlpool.md | 469 ++++++++
assets/img/ashigaru-mobile-guide/01.webp | Bin 0 -> 47322 bytes
assets/img/ashigaru-mobile-guide/02.webp | Bin 0 -> 13758 bytes
assets/img/ashigaru-mobile-guide/03.webp | Bin 0 -> 45664 bytes
assets/img/ashigaru-mobile-guide/04.webp | Bin 0 -> 32640 bytes
assets/img/ashigaru-mobile-guide/05.webp | Bin 0 -> 81060 bytes
assets/img/ashigaru-mobile-guide/06.webp | Bin 0 -> 64616 bytes
assets/img/ashigaru-mobile-guide/07.webp | Bin 0 -> 35334 bytes
assets/img/ashigaru-mobile-guide/08.webp | Bin 0 -> 55148 bytes
assets/img/ashigaru-mobile-guide/09.webp | Bin 0 -> 55564 bytes
assets/img/ashigaru-mobile-guide/10.webp | Bin 0 -> 87294 bytes
assets/img/ashigaru-mobile-guide/11.webp | Bin 0 -> 40328 bytes
assets/img/ashigaru-mobile-guide/12.webp | Bin 0 -> 14312 bytes
assets/img/ashigaru-mobile-guide/13.webp | Bin 0 -> 21232 bytes
assets/img/ashigaru-mobile-guide/14.webp | Bin 0 -> 18798 bytes
assets/img/ashigaru-mobile-guide/15.webp | Bin 0 -> 20812 bytes
assets/img/ashigaru-mobile-guide/16.webp | Bin 0 -> 16750 bytes
assets/img/ashigaru-mobile-guide/17.webp | Bin 0 -> 20754 bytes
assets/img/ashigaru-mobile-guide/18.webp | Bin 0 -> 17976 bytes
assets/img/ashigaru-mobile-guide/19.webp | Bin 0 -> 43776 bytes
assets/img/ashigaru-mobile-guide/20.webp | Bin 0 -> 19398 bytes
assets/img/ashigaru-mobile-guide/21.webp | Bin 0 -> 21972 bytes
assets/img/ashigaru-mobile-guide/22.webp | Bin 0 -> 16302 bytes
assets/img/ashigaru-mobile-guide/23.webp | Bin 0 -> 19632 bytes
assets/img/ashigaru-mobile-guide/24.webp | Bin 0 -> 29232 bytes
assets/img/ashigaru-mobile-guide/25.webp | Bin 0 -> 57372 bytes
assets/img/ashigaru-mobile-guide/26.webp | Bin 0 -> 20448 bytes
assets/img/ashigaru-mobile-guide/27.webp | Bin 0 -> 20530 bytes
assets/img/ashigaru-mobile-guide/28.webp | Bin 0 -> 17014 bytes
assets/img/ashigaru-mobile-guide/29.webp | Bin 0 -> 21108 bytes
assets/img/ashigaru-mobile-guide/30.webp | Bin 0 -> 19222 bytes
assets/img/ashigaru-mobile-guide/31.webp | Bin 0 -> 25198 bytes
assets/img/ashigaru-mobile-guide/32.webp | Bin 0 -> 27912 bytes
assets/img/ashigaru-mobile-guide/33.webp | Bin 0 -> 27104 bytes
assets/img/ashigaru-mobile-guide/34.webp | Bin 0 -> 16078 bytes
assets/img/ashigaru-mobile-guide/35.webp | Bin 0 -> 44924 bytes
assets/img/ashigaru-mobile-guide/36.webp | Bin 0 -> 21278 bytes
assets/img/ashigaru-mobile-guide/37.webp | Bin 0 -> 19882 bytes
assets/img/ashigaru-mobile-guide/38.webp | Bin 0 -> 21780 bytes
assets/img/ashigaru-mobile-guide/39.webp | Bin 0 -> 26622 bytes
assets/img/ashigaru-mobile-guide/40.webp | Bin 0 -> 20546 bytes
assets/img/ashigaru-mobile-guide/41.webp | Bin 0 -> 16786 bytes
assets/img/ashigaru-mobile-guide/cover.webp | Bin 0 -> 39006 bytes
assets/img/ashigaru-mobile-guide/header.png | Bin 0 -> 346526 bytes
assets/img/ashigaru-ricochet/01.webp | Bin 0 -> 26082 bytes
assets/img/ashigaru-ricochet/02.webp | Bin 0 -> 26142 bytes
assets/img/ashigaru-ricochet/03.webp | Bin 0 -> 25850 bytes
assets/img/ashigaru-ricochet/04.webp | Bin 0 -> 34482 bytes
assets/img/ashigaru-ricochet/05.webp | Bin 0 -> 25202 bytes
assets/img/ashigaru-ricochet/06.webp | Bin 0 -> 13412 bytes
assets/img/ashigaru-ricochet/07.webp | Bin 0 -> 21558 bytes
assets/img/ashigaru-stonewall/01.webp | Bin 0 -> 36480 bytes
assets/img/ashigaru-stonewall/02.webp | Bin 0 -> 37192 bytes
assets/img/ashigaru-stonewall/03.webp | Bin 0 -> 18824 bytes
assets/img/ashigaru-stonewall/04.webp | Bin 0 -> 18104 bytes
assets/img/ashigaru-stonewall/05.webp | Bin 0 -> 43334 bytes
assets/img/ashigaru-stonewall/06.webp | Bin 0 -> 27156 bytes
assets/img/ashigaru-stonewall/07.webp | Bin 0 -> 16684 bytes
assets/img/ashigaru-stonewall/08.webp | Bin 0 -> 25230 bytes
assets/img/ashigaru-stonewall/09.webp | Bin 0 -> 25706 bytes
assets/img/ashigaru-stonewall/10.webp | Bin 0 -> 31706 bytes
assets/img/ashigaru-stonewall/11.webp | Bin 0 -> 22676 bytes
assets/img/ashigaru-stonewall/12.webp | Bin 0 -> 27456 bytes
assets/img/ashigaru-stonewall/cover.webp | Bin 0 -> 39006 bytes
assets/img/ashigaru-stowaway/01.webp | Bin 0 -> 23726 bytes
assets/img/ashigaru-stowaway/02.webp | Bin 0 -> 24458 bytes
assets/img/ashigaru-stowaway/03.webp | Bin 0 -> 13904 bytes
assets/img/ashigaru-stowaway/04.webp | Bin 0 -> 21576 bytes
assets/img/ashigaru-stowaway/05.webp | Bin 0 -> 22772 bytes
assets/img/ashigaru-stowaway/06.webp | Bin 0 -> 13904 bytes
assets/img/ashigaru-stowaway/07.webp | Bin 0 -> 25092 bytes
assets/img/ashigaru-stowaway/08.webp | Bin 0 -> 25322 bytes
assets/img/ashigaru-stowaway/09.webp | Bin 0 -> 16722 bytes
assets/img/ashigaru-stowaway/10.webp | Bin 0 -> 18266 bytes
assets/img/ashigaru-stowaway/11.webp | Bin 0 -> 27550 bytes
assets/img/ashigaru-stowaway/12.webp | Bin 0 -> 27354 bytes
assets/img/ashigaru-stowaway/13.webp | Bin 0 -> 16254 bytes
assets/img/ashigaru-stowaway/14.webp | Bin 0 -> 25322 bytes
assets/img/ashigaru-stowaway/15.webp | Bin 0 -> 17728 bytes
assets/img/ashigaru-stowaway/16.webp | Bin 0 -> 24080 bytes
assets/img/ashigaru-stowaway/17.webp | Bin 0 -> 21266 bytes
assets/img/ashigaru-stowaway/18.webp | Bin 0 -> 24772 bytes
assets/img/ashigaru-stowaway/19.webp | Bin 0 -> 29452 bytes
assets/img/ashigaru-stowaway/20.webp | Bin 0 -> 56078 bytes
assets/img/ashigaru-stowaway/d.png | Bin 0 -> 236022 bytes
assets/img/ashigaru-terminal-guide/01.webp | Bin 0 -> 146458 bytes
assets/img/ashigaru-terminal-guide/02.webp | Bin 0 -> 46006 bytes
assets/img/ashigaru-terminal-guide/03.webp | Bin 0 -> 25882 bytes
assets/img/ashigaru-terminal-guide/04.webp | Bin 0 -> 24516 bytes
assets/img/ashigaru-terminal-guide/05.webp | Bin 0 -> 26678 bytes
assets/img/ashigaru-terminal-guide/06.webp | Bin 0 -> 42790 bytes
assets/img/ashigaru-terminal-guide/07.webp | Bin 0 -> 44130 bytes
assets/img/ashigaru-terminal-guide/08.webp | Bin 0 -> 42228 bytes
assets/img/ashigaru-terminal-guide/09.webp | Bin 0 -> 31668 bytes
assets/img/ashigaru-terminal-guide/10.webp | Bin 0 -> 23496 bytes
assets/img/ashigaru-terminal-guide/11.webp | Bin 0 -> 26684 bytes
assets/img/ashigaru-terminal-guide/12.webp | Bin 0 -> 27616 bytes
assets/img/ashigaru-terminal-guide/13.webp | Bin 0 -> 27634 bytes
assets/img/ashigaru-terminal-guide/14.webp | Bin 0 -> 10360 bytes
assets/img/ashigaru-terminal-guide/15.webp | Bin 0 -> 12962 bytes
assets/img/ashigaru-terminal-guide/16.webp | Bin 0 -> 19488 bytes
assets/img/ashigaru-terminal-guide/17.webp | Bin 0 -> 15520 bytes
assets/img/ashigaru-terminal-guide/18.webp | Bin 0 -> 10848 bytes
assets/img/ashigaru-terminal-guide/cover.webp | Bin 0 -> 49540 bytes
assets/img/ashigaru-terminal-guide/header.png | Bin 0 -> 431269 bytes
assets/img/ashigaru-terminal-guide/logo.webp | Bin 0 -> 31816 bytes
assets/img/ashigaru-terminal-setup/01.webp | Bin 0 -> 76440 bytes
assets/img/ashigaru-terminal-setup/02.webp | Bin 0 -> 92456 bytes
assets/img/ashigaru-terminal-setup/03.webp | Bin 0 -> 81812 bytes
assets/img/ashigaru-terminal-setup/04.webp | Bin 0 -> 81872 bytes
assets/img/ashigaru-terminal-setup/05.webp | Bin 0 -> 68468 bytes
assets/img/ashigaru-terminal-setup/06.webp | Bin 0 -> 64762 bytes
assets/img/ashigaru-terminal-setup/07.webp | Bin 0 -> 94610 bytes
assets/img/ashigaru-terminal-setup/08.webp | Bin 0 -> 24832 bytes
assets/img/ashigaru-terminal-setup/09.webp | Bin 0 -> 32874 bytes
assets/img/ashigaru-terminal-setup/10.webp | Bin 0 -> 27606 bytes
assets/img/ashigaru-terminal-setup/11.webp | Bin 0 -> 32486 bytes
assets/img/ashigaru-terminal-setup/12.webp | Bin 0 -> 34122 bytes
assets/img/ashigaru-terminal-setup/13.webp | Bin 0 -> 40558 bytes
assets/img/ashigaru-terminal-setup/14.webp | Bin 0 -> 39372 bytes
assets/img/ashigaru-terminal-setup/15.webp | Bin 0 -> 26336 bytes
assets/img/ashigaru-terminal-setup/16.webp | Bin 0 -> 35262 bytes
assets/img/ashigaru-terminal-setup/17.webp | Bin 0 -> 28812 bytes
assets/img/ashigaru-terminal-setup/18.webp | Bin 0 -> 30082 bytes
assets/img/ashigaru-terminal-setup/19.webp | Bin 0 -> 38178 bytes
assets/img/ashigaru-terminal-setup/20.webp | Bin 0 -> 31238 bytes
assets/img/ashigaru-terminal-setup/21.webp | Bin 0 -> 30838 bytes
assets/img/ashigaru-terminal-setup/22.webp | Bin 0 -> 33426 bytes
assets/img/ashigaru-terminal-setup/23.webp | Bin 0 -> 58014 bytes
assets/img/ashigaru-terminal-setup/24.webp | Bin 0 -> 42262 bytes
assets/img/ashigaru-terminal-setup/25.webp | Bin 0 -> 119130 bytes
assets/img/ashigaru-terminal-setup/26.webp | Bin 0 -> 50164 bytes
assets/img/ashigaru-terminal-setup/27.webp | Bin 0 -> 69560 bytes
assets/img/ashigaru-terminal-setup/cover.webp | Bin 0 -> 33990 bytes
assets/img/ashigaru-terminal-setup/header.png | Bin 0 -> 212241 bytes
assets/img/ashigaru-terminal-setup/logo.webp | Bin 0 -> 12086 bytes
assets/img/envoy-guide-images/01.webp | Bin 0 -> 51738 bytes
assets/img/envoy-guide-images/02.webp | Bin 0 -> 27372 bytes
assets/img/envoy-guide-images/03.webp | Bin 0 -> 27198 bytes
assets/img/envoy-guide-images/04.webp | Bin 0 -> 31936 bytes
assets/img/envoy-guide-images/05.webp | Bin 0 -> 37650 bytes
assets/img/envoy-guide-images/07.webp | Bin 0 -> 36550 bytes
assets/img/envoy-guide-images/08.webp | Bin 0 -> 18566 bytes
assets/img/envoy-guide-images/09.webp | Bin 0 -> 10940 bytes
assets/img/envoy-guide-images/10.webp | Bin 0 -> 32874 bytes
assets/img/envoy-guide-images/11.webp | Bin 0 -> 35650 bytes
assets/img/envoy-guide-images/12.webp | Bin 0 -> 31546 bytes
assets/img/envoy-guide-images/13.webp | Bin 0 -> 15974 bytes
assets/img/envoy-guide-images/14.webp | Bin 0 -> 31008 bytes
assets/img/envoy-guide-images/15.webp | Bin 0 -> 32716 bytes
assets/img/envoy-guide-images/16.webp | Bin 0 -> 31136 bytes
assets/img/envoy-guide-images/17.webp | Bin 0 -> 32126 bytes
assets/img/envoy-guide-images/18.webp | Bin 0 -> 33470 bytes
assets/img/envoy-guide-images/19.webp | Bin 0 -> 33772 bytes
assets/img/envoy-guide-images/20.webp | Bin 0 -> 33508 bytes
assets/img/envoy-guide-images/21.webp | Bin 0 -> 54576 bytes
assets/img/envoy-guide-images/22.webp | Bin 0 -> 34510 bytes
assets/img/envoy-guide-images/23.webp | Bin 0 -> 32312 bytes
assets/img/envoy-guide-images/24.webp | Bin 0 -> 33990 bytes
assets/img/envoy-guide-images/25.webp | Bin 0 -> 31172 bytes
assets/img/envoy-guide-images/26.webp | Bin 0 -> 30570 bytes
assets/img/envoy-guide-images/27.webp | Bin 0 -> 34056 bytes
assets/img/envoy-guide-images/28.webp | Bin 0 -> 35014 bytes
assets/img/envoy-guide-images/29.webp | Bin 0 -> 33714 bytes
assets/img/envoy-guide-images/30.webp | Bin 0 -> 35992 bytes
assets/img/envoy-guide-images/31.webp | Bin 0 -> 34192 bytes
assets/img/envoy-guide-images/32.webp | Bin 0 -> 33940 bytes
assets/img/envoy-guide-images/33.webp | Bin 0 -> 34910 bytes
assets/img/envoy-guide-images/34.webp | Bin 0 -> 36848 bytes
assets/img/envoy-guide-images/35.webp | Bin 0 -> 34022 bytes
assets/img/envoy-guide-images/36.webp | Bin 0 -> 36496 bytes
assets/img/envoy-guide-images/37.webp | Bin 0 -> 35758 bytes
assets/img/envoy-guide-images/38.webp | Bin 0 -> 36022 bytes
assets/img/envoy-guide-images/39.webp | Bin 0 -> 34380 bytes
assets/img/envoy-guide-images/40.webp | Bin 0 -> 32630 bytes
assets/img/envoy-guide-images/41.webp | Bin 0 -> 32590 bytes
assets/img/envoy-guide-images/42.webp | Bin 0 -> 35010 bytes
assets/img/envoy-guide-images/43.webp | Bin 0 -> 35328 bytes
assets/img/envoy-guide-images/44.webp | Bin 0 -> 34558 bytes
assets/img/envoy-guide-images/45.webp | Bin 0 -> 33512 bytes
assets/img/envoy-guide-images/46.webp | Bin 0 -> 33800 bytes
assets/img/envoy-guide-images/47.webp | Bin 0 -> 35170 bytes
assets/img/envoy-guide-images/48.webp | Bin 0 -> 33146 bytes
assets/img/envoy-guide-images/49.webp | Bin 0 -> 28490 bytes
assets/img/envoy-guide-images/50.webp | Bin 0 -> 27772 bytes
assets/img/envoy-guide-images/51.webp | Bin 0 -> 42700 bytes
assets/img/envoy-guide-images/52.webp | Bin 0 -> 21766 bytes
assets/img/envoy-guide-images/53.webp | Bin 0 -> 21136 bytes
assets/img/envoy-guide-images/54.webp | Bin 0 -> 24474 bytes
assets/img/envoy-guide-images/55.webp | Bin 0 -> 38086 bytes
assets/img/envoy-guide-images/56.webp | Bin 0 -> 14692 bytes
assets/img/envoy-guide-images/57.webp | Bin 0 -> 17798 bytes
assets/img/envoy-guide-images/58.webp | Bin 0 -> 15848 bytes
assets/img/envoy-guide-images/59.webp | Bin 0 -> 25496 bytes
assets/img/envoy-guide-images/60.webp | Bin 0 -> 18680 bytes
assets/img/envoy-guide-images/61.webp | Bin 0 -> 13540 bytes
assets/img/envoy-guide-images/62.webp | Bin 0 -> 16982 bytes
assets/img/envoy-guide-images/63.webp | Bin 0 -> 15278 bytes
assets/img/envoy-guide-images/64.webp | Bin 0 -> 13014 bytes
assets/img/envoy-guide-images/65.webp | Bin 0 -> 16776 bytes
assets/img/envoy-guide-images/66.webp | Bin 0 -> 13902 bytes
assets/img/envoy-guide-images/67.webp | Bin 0 -> 39176 bytes
assets/img/envoy-guide-images/68.webp | Bin 0 -> 14360 bytes
assets/img/envoy-guide-images/69.webp | Bin 0 -> 19362 bytes
assets/img/envoy-guide-images/70.webp | Bin 0 -> 24256 bytes
assets/img/envoy-guide-images/71.webp | Bin 0 -> 14458 bytes
assets/img/envoy-guide-images/72.webp | Bin 0 -> 15192 bytes
assets/img/envoy-guide-images/73.webp | Bin 0 -> 17102 bytes
assets/img/envoy-guide-images/74.webp | Bin 0 -> 37410 bytes
assets/img/envoy-guide-images/75.webp | Bin 0 -> 36672 bytes
assets/img/envoy-guide-images/76.webp | Bin 0 -> 25140 bytes
assets/img/envoy-guide-images/77.webp | Bin 0 -> 17660 bytes
assets/img/envoy-guide-images/78.webp | Bin 0 -> 17580 bytes
assets/img/envoy-guide-images/79.webp | Bin 0 -> 14018 bytes
assets/img/envoy-guide-images/80.webp | Bin 0 -> 14698 bytes
assets/img/envoy-guide-images/81.webp | Bin 0 -> 28518 bytes
assets/img/envoy-guide-images/82.webp | Bin 0 -> 14172 bytes
assets/img/envoy-guide-images/83.webp | Bin 0 -> 33284 bytes
assets/img/envoy-guide-images/84.webp | Bin 0 -> 27740 bytes
assets/img/envoy-guide-images/85.webp | Bin 0 -> 14182 bytes
assets/img/envoy-guide-images/86.webp | Bin 0 -> 27024 bytes
assets/img/envoy-guide-images/87.webp | Bin 0 -> 23570 bytes
assets/img/envoy-guide-images/88.webp | Bin 0 -> 23962 bytes
assets/img/envoy-guide-images/89.webp | Bin 0 -> 25580 bytes
assets/img/envoy-guide-images/90.webp | Bin 0 -> 40106 bytes
assets/img/envoy-guide-images/91.webp | Bin 0 -> 33140 bytes
assets/img/envoy-guide-images/92.webp | Bin 0 -> 27370 bytes
assets/img/envoy-guide-images/93.webp | Bin 0 -> 18678 bytes
assets/img/envoy-guide-images/cover.webp | Bin 0 -> 30054 bytes
assets/img/envoy-guide-images/header.png | Bin 0 -> 556150 bytes
.../envoy-guide-images/passport-dark-1.webp | Bin 0 -> 188248 bytes
assets/img/passport-core-guide-images/01.webp | Bin 0 -> 47390 bytes
assets/img/passport-core-guide-images/02.webp | Bin 0 -> 27372 bytes
assets/img/passport-core-guide-images/03.webp | Bin 0 -> 27198 bytes
assets/img/passport-core-guide-images/04.webp | Bin 0 -> 31936 bytes
assets/img/passport-core-guide-images/05.webp | Bin 0 -> 37650 bytes
assets/img/passport-core-guide-images/06.webp | Bin 0 -> 36730 bytes
assets/img/passport-core-guide-images/07.webp | Bin 0 -> 36550 bytes
assets/img/passport-core-guide-images/08.webp | Bin 0 -> 18566 bytes
assets/img/passport-core-guide-images/09.webp | Bin 0 -> 10940 bytes
assets/img/passport-core-guide-images/10.webp | Bin 0 -> 32874 bytes
assets/img/passport-core-guide-images/11.webp | Bin 0 -> 35650 bytes
assets/img/passport-core-guide-images/12.webp | Bin 0 -> 31546 bytes
assets/img/passport-core-guide-images/13.webp | Bin 0 -> 15974 bytes
assets/img/passport-core-guide-images/14.webp | Bin 0 -> 31008 bytes
assets/img/passport-core-guide-images/15.webp | Bin 0 -> 32716 bytes
assets/img/passport-core-guide-images/16.webp | Bin 0 -> 31136 bytes
assets/img/passport-core-guide-images/17.webp | Bin 0 -> 32126 bytes
assets/img/passport-core-guide-images/18.webp | Bin 0 -> 33470 bytes
assets/img/passport-core-guide-images/19.webp | Bin 0 -> 33772 bytes
assets/img/passport-core-guide-images/20.webp | Bin 0 -> 33508 bytes
assets/img/passport-core-guide-images/21.webp | Bin 0 -> 54576 bytes
assets/img/passport-core-guide-images/22.webp | Bin 0 -> 34510 bytes
assets/img/passport-core-guide-images/23.webp | Bin 0 -> 32312 bytes
assets/img/passport-core-guide-images/24.webp | Bin 0 -> 33990 bytes
assets/img/passport-core-guide-images/25.webp | Bin 0 -> 31172 bytes
assets/img/passport-core-guide-images/26.webp | Bin 0 -> 30570 bytes
assets/img/passport-core-guide-images/27.webp | Bin 0 -> 34056 bytes
assets/img/passport-core-guide-images/28.webp | Bin 0 -> 35014 bytes
assets/img/passport-core-guide-images/29.webp | Bin 0 -> 33714 bytes
assets/img/passport-core-guide-images/30.webp | Bin 0 -> 35992 bytes
assets/img/passport-core-guide-images/31.webp | Bin 0 -> 34192 bytes
assets/img/passport-core-guide-images/32.webp | Bin 0 -> 33940 bytes
assets/img/passport-core-guide-images/33.webp | Bin 0 -> 34910 bytes
assets/img/passport-core-guide-images/34.webp | Bin 0 -> 36848 bytes
assets/img/passport-core-guide-images/35.webp | Bin 0 -> 34022 bytes
assets/img/passport-core-guide-images/36.webp | Bin 0 -> 36496 bytes
assets/img/passport-core-guide-images/37.webp | Bin 0 -> 35758 bytes
assets/img/passport-core-guide-images/38.webp | Bin 0 -> 36022 bytes
assets/img/passport-core-guide-images/39.webp | Bin 0 -> 34380 bytes
assets/img/passport-core-guide-images/40.webp | Bin 0 -> 32630 bytes
assets/img/passport-core-guide-images/41.webp | Bin 0 -> 32590 bytes
assets/img/passport-core-guide-images/42.webp | Bin 0 -> 35010 bytes
assets/img/passport-core-guide-images/43.webp | Bin 0 -> 35328 bytes
assets/img/passport-core-guide-images/44.webp | Bin 0 -> 34558 bytes
assets/img/passport-core-guide-images/45.webp | Bin 0 -> 33512 bytes
assets/img/passport-core-guide-images/46.webp | Bin 0 -> 33800 bytes
assets/img/passport-core-guide-images/47.webp | Bin 0 -> 35170 bytes
assets/img/passport-core-guide-images/48.webp | Bin 0 -> 33146 bytes
assets/img/passport-core-guide-images/49.webp | Bin 0 -> 28490 bytes
assets/img/passport-core-guide-images/50.webp | Bin 0 -> 32442 bytes
assets/img/passport-core-guide-images/51.webp | Bin 0 -> 33274 bytes
assets/img/passport-core-guide-images/52.webp | Bin 0 -> 35812 bytes
assets/img/passport-core-guide-images/53.webp | Bin 0 -> 37396 bytes
assets/img/passport-core-guide-images/54.webp | Bin 0 -> 37794 bytes
assets/img/passport-core-guide-images/55.webp | Bin 0 -> 15036 bytes
assets/img/passport-core-guide-images/56.webp | Bin 0 -> 9336 bytes
assets/img/passport-core-guide-images/57.webp | Bin 0 -> 17696 bytes
assets/img/passport-core-guide-images/58.webp | Bin 0 -> 28420 bytes
assets/img/passport-core-guide-images/59.webp | Bin 0 -> 35350 bytes
assets/img/passport-core-guide-images/60.webp | Bin 0 -> 36242 bytes
assets/img/passport-core-guide-images/61.webp | Bin 0 -> 31128 bytes
assets/img/passport-core-guide-images/62.webp | Bin 0 -> 34348 bytes
assets/img/passport-core-guide-images/63.webp | Bin 0 -> 35924 bytes
assets/img/passport-core-guide-images/64.webp | Bin 0 -> 22700 bytes
assets/img/passport-core-guide-images/65.webp | Bin 0 -> 24992 bytes
assets/img/passport-core-guide-images/66.webp | Bin 0 -> 16274 bytes
assets/img/passport-core-guide-images/67.webp | Bin 0 -> 22604 bytes
assets/img/passport-core-guide-images/68.webp | Bin 0 -> 36690 bytes
assets/img/passport-core-guide-images/69.webp | Bin 0 -> 34552 bytes
assets/img/passport-core-guide-images/70.webp | Bin 0 -> 12686 bytes
assets/img/passport-core-guide-images/71.webp | Bin 0 -> 22382 bytes
assets/img/passport-core-guide-images/72.webp | Bin 0 -> 37410 bytes
assets/img/passport-core-guide-images/73.webp | Bin 0 -> 36672 bytes
assets/img/passport-core-guide-images/74.webp | Bin 0 -> 38844 bytes
assets/img/passport-core-guide-images/75.webp | Bin 0 -> 22034 bytes
assets/img/passport-core-guide-images/76.webp | Bin 0 -> 22258 bytes
assets/img/passport-core-guide-images/77.webp | Bin 0 -> 20832 bytes
assets/img/passport-core-guide-images/78.webp | Bin 0 -> 25368 bytes
assets/img/passport-core-guide-images/79.webp | Bin 0 -> 26342 bytes
assets/img/passport-core-guide-images/80.webp | Bin 0 -> 27840 bytes
assets/img/passport-core-guide-images/81.webp | Bin 0 -> 28228 bytes
assets/img/passport-core-guide-images/82.webp | Bin 0 -> 35868 bytes
assets/img/passport-core-guide-images/83.webp | Bin 0 -> 17882 bytes
assets/img/passport-core-guide-images/84.webp | Bin 0 -> 37346 bytes
assets/img/passport-core-guide-images/85.webp | Bin 0 -> 33840 bytes
assets/img/passport-core-guide-images/86.webp | Bin 0 -> 33950 bytes
assets/img/passport-core-guide-images/87.webp | Bin 0 -> 34984 bytes
assets/img/passport-core-guide-images/88.webp | Bin 0 -> 28442 bytes
assets/img/passport-core-guide-images/89.webp | Bin 0 -> 27002 bytes
assets/img/passport-core-guide-images/90.webp | Bin 0 -> 22690 bytes
.../img/passport-core-guide-images/cover.webp | Bin 0 -> 21854 bytes
.../img/passport-core-guide-images/header.png | Bin 0 -> 643892 bytes
.../passport-core-guide-images/header.webp | Bin 0 -> 188248 bytes
.../qr-code_Dark.png | Bin 0 -> 117328 bytes
assets/img/payjoin/1.webp | Bin 0 -> 25094 bytes
assets/img/payjoin/2.webp | Bin 0 -> 14406 bytes
assets/img/payjoin/3.webp | Bin 0 -> 28818 bytes
assets/img/payjoin/cover.webp | Bin 0 -> 173214 bytes
assets/img/payjoin/logo.webp | Bin 0 -> 14304 bytes
assets/img/stonewallx2/01.webp | Bin 0 -> 33062 bytes
assets/img/stonewallx2/02.webp | Bin 0 -> 35012 bytes
assets/img/stonewallx2/03.webp | Bin 0 -> 18724 bytes
assets/img/stonewallx2/04.webp | Bin 0 -> 38060 bytes
assets/img/stonewallx2/05.webp | Bin 0 -> 18824 bytes
assets/img/stonewallx2/06.webp | Bin 0 -> 23954 bytes
assets/img/stonewallx2/07.webp | Bin 0 -> 14018 bytes
assets/img/stonewallx2/08.webp | Bin 0 -> 21656 bytes
assets/img/stonewallx2/09.webp | Bin 0 -> 21912 bytes
assets/img/stonewallx2/10.webp | Bin 0 -> 14020 bytes
assets/img/stonewallx2/11.webp | Bin 0 -> 25210 bytes
assets/img/stonewallx2/12.webp | Bin 0 -> 25452 bytes
assets/img/stonewallx2/13.webp | Bin 0 -> 19664 bytes
assets/img/stonewallx2/14.webp | Bin 0 -> 18374 bytes
assets/img/stonewallx2/15.webp | Bin 0 -> 28476 bytes
assets/img/stonewallx2/16.webp | Bin 0 -> 28940 bytes
assets/img/stonewallx2/17.webp | Bin 0 -> 16342 bytes
assets/img/stonewallx2/18.webp | Bin 0 -> 25448 bytes
assets/img/stonewallx2/19.webp | Bin 0 -> 17924 bytes
assets/img/stonewallx2/20.webp | Bin 0 -> 28128 bytes
assets/img/stonewallx2/21.webp | Bin 0 -> 25992 bytes
assets/img/stonewallx2/22.webp | Bin 0 -> 24258 bytes
assets/img/stonewallx2/23.webp | Bin 0 -> 29852 bytes
assets/img/stonewallx2/24.webp | Bin 0 -> 84220 bytes
assets/img/stonewallx2/e.png | Bin 0 -> 306534 bytes
assets/img/vanilla-dojo-guide-images/01.webp | Bin 0 -> 16920 bytes
assets/img/vanilla-dojo-guide-images/02.webp | Bin 0 -> 98772 bytes
assets/img/vanilla-dojo-guide-images/03.webp | Bin 0 -> 16536 bytes
assets/img/vanilla-dojo-guide-images/04.webp | Bin 0 -> 164920 bytes
assets/img/vanilla-dojo-guide-images/05.webp | Bin 0 -> 53456 bytes
assets/img/vanilla-dojo-guide-images/06.webp | Bin 0 -> 62212 bytes
assets/img/vanilla-dojo-guide-images/07.webp | Bin 0 -> 52656 bytes
assets/img/vanilla-dojo-guide-images/08.webp | Bin 0 -> 120158 bytes
assets/img/vanilla-dojo-guide-images/09.webp | Bin 0 -> 131550 bytes
assets/img/vanilla-dojo-guide-images/10.webp | Bin 0 -> 135358 bytes
assets/img/vanilla-dojo-guide-images/11.webp | Bin 0 -> 157908 bytes
assets/img/vanilla-dojo-guide-images/12.webp | Bin 0 -> 136714 bytes
assets/img/vanilla-dojo-guide-images/13.webp | Bin 0 -> 22322 bytes
assets/img/vanilla-dojo-guide-images/14.webp | Bin 0 -> 154354 bytes
assets/img/vanilla-dojo-guide-images/15.webp | Bin 0 -> 132732 bytes
assets/img/vanilla-dojo-guide-images/16.webp | Bin 0 -> 184254 bytes
assets/img/vanilla-dojo-guide-images/17.webp | Bin 0 -> 81210 bytes
assets/img/vanilla-dojo-guide-images/18.webp | Bin 0 -> 72464 bytes
assets/img/vanilla-dojo-guide-images/19.webp | Bin 0 -> 166530 bytes
assets/img/vanilla-dojo-guide-images/20.webp | Bin 0 -> 42496 bytes
assets/img/vanilla-dojo-guide-images/21.webp | Bin 0 -> 29464 bytes
assets/img/vanilla-dojo-guide-images/22.webp | Bin 0 -> 90704 bytes
assets/img/vanilla-dojo-guide-images/23.webp | Bin 0 -> 100806 bytes
assets/img/vanilla-dojo-guide-images/24.webp | Bin 0 -> 98822 bytes
assets/img/vanilla-dojo-guide-images/25.webp | Bin 0 -> 84938 bytes
assets/img/vanilla-dojo-guide-images/26.webp | Bin 0 -> 99458 bytes
assets/img/vanilla-dojo-guide-images/27.webp | Bin 0 -> 108644 bytes
assets/img/vanilla-dojo-guide-images/28.webp | Bin 0 -> 27742 bytes
assets/img/vanilla-dojo-guide-images/29.webp | Bin 0 -> 41208 bytes
assets/img/vanilla-dojo-guide-images/30.webp | Bin 0 -> 147406 bytes
assets/img/vanilla-dojo-guide-images/31.webp | Bin 0 -> 138028 bytes
assets/img/vanilla-dojo-guide-images/32.webp | Bin 0 -> 64736 bytes
assets/img/vanilla-dojo-guide-images/33.webp | Bin 0 -> 18740 bytes
assets/img/vanilla-dojo-guide-images/34.webp | Bin 0 -> 63016 bytes
assets/img/vanilla-dojo-guide-images/35.webp | Bin 0 -> 27730 bytes
assets/img/vanilla-dojo-guide-images/36.webp | Bin 0 -> 223330 bytes
assets/img/vanilla-dojo-guide-images/37.webp | Bin 0 -> 197720 bytes
assets/img/vanilla-dojo-guide-images/38.webp | Bin 0 -> 50390 bytes
assets/img/vanilla-dojo-guide-images/39.webp | Bin 0 -> 19648 bytes
assets/img/vanilla-dojo-guide-images/40.webp | Bin 0 -> 20164 bytes
assets/img/vanilla-dojo-guide-images/41.webp | Bin 0 -> 18526 bytes
assets/img/vanilla-dojo-guide-images/42.webp | Bin 0 -> 64504 bytes
assets/img/vanilla-dojo-guide-images/43.webp | Bin 0 -> 55642 bytes
assets/img/vanilla-dojo-guide-images/44.webp | Bin 0 -> 88034 bytes
assets/img/vanilla-dojo-guide-images/45.webp | Bin 0 -> 80570 bytes
assets/img/vanilla-dojo-guide-images/46.webp | Bin 0 -> 65410 bytes
assets/img/vanilla-dojo-guide-images/47.webp | Bin 0 -> 75562 bytes
.../img/vanilla-dojo-guide-images/cover.webp | Bin 0 -> 32470 bytes
.../img/vanilla-dojo-guide-images/header.png | Bin 0 -> 240152 bytes
.../img/vanilla-dojo-guide-images/logo.webp | Bin 0 -> 17502 bytes
passport-core-advanced.md | 533 +++++++++
passport-core.md | 501 ++++++++
vanilla-dojo.md | 1023 +++++++++++++++++
410 files changed, 3447 insertions(+), 43 deletions(-)
create mode 100644 ashigaru-mobile.md
create mode 100644 ashigaru-terminal-whirlpool.md
create mode 100644 assets/img/ashigaru-mobile-guide/01.webp
create mode 100644 assets/img/ashigaru-mobile-guide/02.webp
create mode 100644 assets/img/ashigaru-mobile-guide/03.webp
create mode 100644 assets/img/ashigaru-mobile-guide/04.webp
create mode 100644 assets/img/ashigaru-mobile-guide/05.webp
create mode 100644 assets/img/ashigaru-mobile-guide/06.webp
create mode 100644 assets/img/ashigaru-mobile-guide/07.webp
create mode 100644 assets/img/ashigaru-mobile-guide/08.webp
create mode 100644 assets/img/ashigaru-mobile-guide/09.webp
create mode 100644 assets/img/ashigaru-mobile-guide/10.webp
create mode 100644 assets/img/ashigaru-mobile-guide/11.webp
create mode 100644 assets/img/ashigaru-mobile-guide/12.webp
create mode 100644 assets/img/ashigaru-mobile-guide/13.webp
create mode 100644 assets/img/ashigaru-mobile-guide/14.webp
create mode 100644 assets/img/ashigaru-mobile-guide/15.webp
create mode 100644 assets/img/ashigaru-mobile-guide/16.webp
create mode 100644 assets/img/ashigaru-mobile-guide/17.webp
create mode 100644 assets/img/ashigaru-mobile-guide/18.webp
create mode 100644 assets/img/ashigaru-mobile-guide/19.webp
create mode 100644 assets/img/ashigaru-mobile-guide/20.webp
create mode 100644 assets/img/ashigaru-mobile-guide/21.webp
create mode 100644 assets/img/ashigaru-mobile-guide/22.webp
create mode 100644 assets/img/ashigaru-mobile-guide/23.webp
create mode 100644 assets/img/ashigaru-mobile-guide/24.webp
create mode 100644 assets/img/ashigaru-mobile-guide/25.webp
create mode 100644 assets/img/ashigaru-mobile-guide/26.webp
create mode 100644 assets/img/ashigaru-mobile-guide/27.webp
create mode 100644 assets/img/ashigaru-mobile-guide/28.webp
create mode 100644 assets/img/ashigaru-mobile-guide/29.webp
create mode 100644 assets/img/ashigaru-mobile-guide/30.webp
create mode 100644 assets/img/ashigaru-mobile-guide/31.webp
create mode 100644 assets/img/ashigaru-mobile-guide/32.webp
create mode 100644 assets/img/ashigaru-mobile-guide/33.webp
create mode 100644 assets/img/ashigaru-mobile-guide/34.webp
create mode 100644 assets/img/ashigaru-mobile-guide/35.webp
create mode 100644 assets/img/ashigaru-mobile-guide/36.webp
create mode 100644 assets/img/ashigaru-mobile-guide/37.webp
create mode 100644 assets/img/ashigaru-mobile-guide/38.webp
create mode 100644 assets/img/ashigaru-mobile-guide/39.webp
create mode 100644 assets/img/ashigaru-mobile-guide/40.webp
create mode 100644 assets/img/ashigaru-mobile-guide/41.webp
create mode 100644 assets/img/ashigaru-mobile-guide/cover.webp
create mode 100644 assets/img/ashigaru-mobile-guide/header.png
create mode 100644 assets/img/ashigaru-ricochet/01.webp
create mode 100644 assets/img/ashigaru-ricochet/02.webp
create mode 100644 assets/img/ashigaru-ricochet/03.webp
create mode 100644 assets/img/ashigaru-ricochet/04.webp
create mode 100644 assets/img/ashigaru-ricochet/05.webp
create mode 100644 assets/img/ashigaru-ricochet/06.webp
create mode 100644 assets/img/ashigaru-ricochet/07.webp
create mode 100644 assets/img/ashigaru-stonewall/01.webp
create mode 100644 assets/img/ashigaru-stonewall/02.webp
create mode 100644 assets/img/ashigaru-stonewall/03.webp
create mode 100644 assets/img/ashigaru-stonewall/04.webp
create mode 100644 assets/img/ashigaru-stonewall/05.webp
create mode 100644 assets/img/ashigaru-stonewall/06.webp
create mode 100644 assets/img/ashigaru-stonewall/07.webp
create mode 100644 assets/img/ashigaru-stonewall/08.webp
create mode 100644 assets/img/ashigaru-stonewall/09.webp
create mode 100644 assets/img/ashigaru-stonewall/10.webp
create mode 100644 assets/img/ashigaru-stonewall/11.webp
create mode 100644 assets/img/ashigaru-stonewall/12.webp
create mode 100644 assets/img/ashigaru-stonewall/cover.webp
create mode 100644 assets/img/ashigaru-stowaway/01.webp
create mode 100644 assets/img/ashigaru-stowaway/02.webp
create mode 100644 assets/img/ashigaru-stowaway/03.webp
create mode 100644 assets/img/ashigaru-stowaway/04.webp
create mode 100644 assets/img/ashigaru-stowaway/05.webp
create mode 100644 assets/img/ashigaru-stowaway/06.webp
create mode 100644 assets/img/ashigaru-stowaway/07.webp
create mode 100644 assets/img/ashigaru-stowaway/08.webp
create mode 100644 assets/img/ashigaru-stowaway/09.webp
create mode 100644 assets/img/ashigaru-stowaway/10.webp
create mode 100644 assets/img/ashigaru-stowaway/11.webp
create mode 100644 assets/img/ashigaru-stowaway/12.webp
create mode 100644 assets/img/ashigaru-stowaway/13.webp
create mode 100644 assets/img/ashigaru-stowaway/14.webp
create mode 100644 assets/img/ashigaru-stowaway/15.webp
create mode 100644 assets/img/ashigaru-stowaway/16.webp
create mode 100644 assets/img/ashigaru-stowaway/17.webp
create mode 100644 assets/img/ashigaru-stowaway/18.webp
create mode 100644 assets/img/ashigaru-stowaway/19.webp
create mode 100644 assets/img/ashigaru-stowaway/20.webp
create mode 100644 assets/img/ashigaru-stowaway/d.png
create mode 100644 assets/img/ashigaru-terminal-guide/01.webp
create mode 100644 assets/img/ashigaru-terminal-guide/02.webp
create mode 100644 assets/img/ashigaru-terminal-guide/03.webp
create mode 100644 assets/img/ashigaru-terminal-guide/04.webp
create mode 100644 assets/img/ashigaru-terminal-guide/05.webp
create mode 100644 assets/img/ashigaru-terminal-guide/06.webp
create mode 100644 assets/img/ashigaru-terminal-guide/07.webp
create mode 100644 assets/img/ashigaru-terminal-guide/08.webp
create mode 100644 assets/img/ashigaru-terminal-guide/09.webp
create mode 100644 assets/img/ashigaru-terminal-guide/10.webp
create mode 100644 assets/img/ashigaru-terminal-guide/11.webp
create mode 100644 assets/img/ashigaru-terminal-guide/12.webp
create mode 100644 assets/img/ashigaru-terminal-guide/13.webp
create mode 100644 assets/img/ashigaru-terminal-guide/14.webp
create mode 100644 assets/img/ashigaru-terminal-guide/15.webp
create mode 100644 assets/img/ashigaru-terminal-guide/16.webp
create mode 100644 assets/img/ashigaru-terminal-guide/17.webp
create mode 100644 assets/img/ashigaru-terminal-guide/18.webp
create mode 100644 assets/img/ashigaru-terminal-guide/cover.webp
create mode 100644 assets/img/ashigaru-terminal-guide/header.png
create mode 100644 assets/img/ashigaru-terminal-guide/logo.webp
create mode 100644 assets/img/ashigaru-terminal-setup/01.webp
create mode 100644 assets/img/ashigaru-terminal-setup/02.webp
create mode 100644 assets/img/ashigaru-terminal-setup/03.webp
create mode 100644 assets/img/ashigaru-terminal-setup/04.webp
create mode 100644 assets/img/ashigaru-terminal-setup/05.webp
create mode 100644 assets/img/ashigaru-terminal-setup/06.webp
create mode 100644 assets/img/ashigaru-terminal-setup/07.webp
create mode 100644 assets/img/ashigaru-terminal-setup/08.webp
create mode 100644 assets/img/ashigaru-terminal-setup/09.webp
create mode 100644 assets/img/ashigaru-terminal-setup/10.webp
create mode 100644 assets/img/ashigaru-terminal-setup/11.webp
create mode 100644 assets/img/ashigaru-terminal-setup/12.webp
create mode 100644 assets/img/ashigaru-terminal-setup/13.webp
create mode 100644 assets/img/ashigaru-terminal-setup/14.webp
create mode 100644 assets/img/ashigaru-terminal-setup/15.webp
create mode 100644 assets/img/ashigaru-terminal-setup/16.webp
create mode 100644 assets/img/ashigaru-terminal-setup/17.webp
create mode 100644 assets/img/ashigaru-terminal-setup/18.webp
create mode 100644 assets/img/ashigaru-terminal-setup/19.webp
create mode 100644 assets/img/ashigaru-terminal-setup/20.webp
create mode 100644 assets/img/ashigaru-terminal-setup/21.webp
create mode 100644 assets/img/ashigaru-terminal-setup/22.webp
create mode 100644 assets/img/ashigaru-terminal-setup/23.webp
create mode 100644 assets/img/ashigaru-terminal-setup/24.webp
create mode 100644 assets/img/ashigaru-terminal-setup/25.webp
create mode 100644 assets/img/ashigaru-terminal-setup/26.webp
create mode 100644 assets/img/ashigaru-terminal-setup/27.webp
create mode 100644 assets/img/ashigaru-terminal-setup/cover.webp
create mode 100644 assets/img/ashigaru-terminal-setup/header.png
create mode 100644 assets/img/ashigaru-terminal-setup/logo.webp
create mode 100644 assets/img/envoy-guide-images/01.webp
create mode 100644 assets/img/envoy-guide-images/02.webp
create mode 100644 assets/img/envoy-guide-images/03.webp
create mode 100644 assets/img/envoy-guide-images/04.webp
create mode 100644 assets/img/envoy-guide-images/05.webp
create mode 100644 assets/img/envoy-guide-images/07.webp
create mode 100644 assets/img/envoy-guide-images/08.webp
create mode 100644 assets/img/envoy-guide-images/09.webp
create mode 100644 assets/img/envoy-guide-images/10.webp
create mode 100644 assets/img/envoy-guide-images/11.webp
create mode 100644 assets/img/envoy-guide-images/12.webp
create mode 100644 assets/img/envoy-guide-images/13.webp
create mode 100644 assets/img/envoy-guide-images/14.webp
create mode 100644 assets/img/envoy-guide-images/15.webp
create mode 100644 assets/img/envoy-guide-images/16.webp
create mode 100644 assets/img/envoy-guide-images/17.webp
create mode 100644 assets/img/envoy-guide-images/18.webp
create mode 100644 assets/img/envoy-guide-images/19.webp
create mode 100644 assets/img/envoy-guide-images/20.webp
create mode 100644 assets/img/envoy-guide-images/21.webp
create mode 100644 assets/img/envoy-guide-images/22.webp
create mode 100644 assets/img/envoy-guide-images/23.webp
create mode 100644 assets/img/envoy-guide-images/24.webp
create mode 100644 assets/img/envoy-guide-images/25.webp
create mode 100644 assets/img/envoy-guide-images/26.webp
create mode 100644 assets/img/envoy-guide-images/27.webp
create mode 100644 assets/img/envoy-guide-images/28.webp
create mode 100644 assets/img/envoy-guide-images/29.webp
create mode 100644 assets/img/envoy-guide-images/30.webp
create mode 100644 assets/img/envoy-guide-images/31.webp
create mode 100644 assets/img/envoy-guide-images/32.webp
create mode 100644 assets/img/envoy-guide-images/33.webp
create mode 100644 assets/img/envoy-guide-images/34.webp
create mode 100644 assets/img/envoy-guide-images/35.webp
create mode 100644 assets/img/envoy-guide-images/36.webp
create mode 100644 assets/img/envoy-guide-images/37.webp
create mode 100644 assets/img/envoy-guide-images/38.webp
create mode 100644 assets/img/envoy-guide-images/39.webp
create mode 100644 assets/img/envoy-guide-images/40.webp
create mode 100644 assets/img/envoy-guide-images/41.webp
create mode 100644 assets/img/envoy-guide-images/42.webp
create mode 100644 assets/img/envoy-guide-images/43.webp
create mode 100644 assets/img/envoy-guide-images/44.webp
create mode 100644 assets/img/envoy-guide-images/45.webp
create mode 100644 assets/img/envoy-guide-images/46.webp
create mode 100644 assets/img/envoy-guide-images/47.webp
create mode 100644 assets/img/envoy-guide-images/48.webp
create mode 100644 assets/img/envoy-guide-images/49.webp
create mode 100644 assets/img/envoy-guide-images/50.webp
create mode 100644 assets/img/envoy-guide-images/51.webp
create mode 100644 assets/img/envoy-guide-images/52.webp
create mode 100644 assets/img/envoy-guide-images/53.webp
create mode 100644 assets/img/envoy-guide-images/54.webp
create mode 100644 assets/img/envoy-guide-images/55.webp
create mode 100644 assets/img/envoy-guide-images/56.webp
create mode 100644 assets/img/envoy-guide-images/57.webp
create mode 100644 assets/img/envoy-guide-images/58.webp
create mode 100644 assets/img/envoy-guide-images/59.webp
create mode 100644 assets/img/envoy-guide-images/60.webp
create mode 100644 assets/img/envoy-guide-images/61.webp
create mode 100644 assets/img/envoy-guide-images/62.webp
create mode 100644 assets/img/envoy-guide-images/63.webp
create mode 100644 assets/img/envoy-guide-images/64.webp
create mode 100644 assets/img/envoy-guide-images/65.webp
create mode 100644 assets/img/envoy-guide-images/66.webp
create mode 100644 assets/img/envoy-guide-images/67.webp
create mode 100644 assets/img/envoy-guide-images/68.webp
create mode 100644 assets/img/envoy-guide-images/69.webp
create mode 100644 assets/img/envoy-guide-images/70.webp
create mode 100644 assets/img/envoy-guide-images/71.webp
create mode 100644 assets/img/envoy-guide-images/72.webp
create mode 100644 assets/img/envoy-guide-images/73.webp
create mode 100644 assets/img/envoy-guide-images/74.webp
create mode 100644 assets/img/envoy-guide-images/75.webp
create mode 100644 assets/img/envoy-guide-images/76.webp
create mode 100644 assets/img/envoy-guide-images/77.webp
create mode 100644 assets/img/envoy-guide-images/78.webp
create mode 100644 assets/img/envoy-guide-images/79.webp
create mode 100644 assets/img/envoy-guide-images/80.webp
create mode 100644 assets/img/envoy-guide-images/81.webp
create mode 100644 assets/img/envoy-guide-images/82.webp
create mode 100644 assets/img/envoy-guide-images/83.webp
create mode 100644 assets/img/envoy-guide-images/84.webp
create mode 100644 assets/img/envoy-guide-images/85.webp
create mode 100644 assets/img/envoy-guide-images/86.webp
create mode 100644 assets/img/envoy-guide-images/87.webp
create mode 100644 assets/img/envoy-guide-images/88.webp
create mode 100644 assets/img/envoy-guide-images/89.webp
create mode 100644 assets/img/envoy-guide-images/90.webp
create mode 100644 assets/img/envoy-guide-images/91.webp
create mode 100644 assets/img/envoy-guide-images/92.webp
create mode 100644 assets/img/envoy-guide-images/93.webp
create mode 100644 assets/img/envoy-guide-images/cover.webp
create mode 100644 assets/img/envoy-guide-images/header.png
create mode 100644 assets/img/envoy-guide-images/passport-dark-1.webp
create mode 100644 assets/img/passport-core-guide-images/01.webp
create mode 100644 assets/img/passport-core-guide-images/02.webp
create mode 100644 assets/img/passport-core-guide-images/03.webp
create mode 100644 assets/img/passport-core-guide-images/04.webp
create mode 100644 assets/img/passport-core-guide-images/05.webp
create mode 100644 assets/img/passport-core-guide-images/06.webp
create mode 100644 assets/img/passport-core-guide-images/07.webp
create mode 100644 assets/img/passport-core-guide-images/08.webp
create mode 100644 assets/img/passport-core-guide-images/09.webp
create mode 100644 assets/img/passport-core-guide-images/10.webp
create mode 100644 assets/img/passport-core-guide-images/11.webp
create mode 100644 assets/img/passport-core-guide-images/12.webp
create mode 100644 assets/img/passport-core-guide-images/13.webp
create mode 100644 assets/img/passport-core-guide-images/14.webp
create mode 100644 assets/img/passport-core-guide-images/15.webp
create mode 100644 assets/img/passport-core-guide-images/16.webp
create mode 100644 assets/img/passport-core-guide-images/17.webp
create mode 100644 assets/img/passport-core-guide-images/18.webp
create mode 100644 assets/img/passport-core-guide-images/19.webp
create mode 100644 assets/img/passport-core-guide-images/20.webp
create mode 100644 assets/img/passport-core-guide-images/21.webp
create mode 100644 assets/img/passport-core-guide-images/22.webp
create mode 100644 assets/img/passport-core-guide-images/23.webp
create mode 100644 assets/img/passport-core-guide-images/24.webp
create mode 100644 assets/img/passport-core-guide-images/25.webp
create mode 100644 assets/img/passport-core-guide-images/26.webp
create mode 100644 assets/img/passport-core-guide-images/27.webp
create mode 100644 assets/img/passport-core-guide-images/28.webp
create mode 100644 assets/img/passport-core-guide-images/29.webp
create mode 100644 assets/img/passport-core-guide-images/30.webp
create mode 100644 assets/img/passport-core-guide-images/31.webp
create mode 100644 assets/img/passport-core-guide-images/32.webp
create mode 100644 assets/img/passport-core-guide-images/33.webp
create mode 100644 assets/img/passport-core-guide-images/34.webp
create mode 100644 assets/img/passport-core-guide-images/35.webp
create mode 100644 assets/img/passport-core-guide-images/36.webp
create mode 100644 assets/img/passport-core-guide-images/37.webp
create mode 100644 assets/img/passport-core-guide-images/38.webp
create mode 100644 assets/img/passport-core-guide-images/39.webp
create mode 100644 assets/img/passport-core-guide-images/40.webp
create mode 100644 assets/img/passport-core-guide-images/41.webp
create mode 100644 assets/img/passport-core-guide-images/42.webp
create mode 100644 assets/img/passport-core-guide-images/43.webp
create mode 100644 assets/img/passport-core-guide-images/44.webp
create mode 100644 assets/img/passport-core-guide-images/45.webp
create mode 100644 assets/img/passport-core-guide-images/46.webp
create mode 100644 assets/img/passport-core-guide-images/47.webp
create mode 100644 assets/img/passport-core-guide-images/48.webp
create mode 100644 assets/img/passport-core-guide-images/49.webp
create mode 100644 assets/img/passport-core-guide-images/50.webp
create mode 100644 assets/img/passport-core-guide-images/51.webp
create mode 100644 assets/img/passport-core-guide-images/52.webp
create mode 100644 assets/img/passport-core-guide-images/53.webp
create mode 100644 assets/img/passport-core-guide-images/54.webp
create mode 100644 assets/img/passport-core-guide-images/55.webp
create mode 100644 assets/img/passport-core-guide-images/56.webp
create mode 100644 assets/img/passport-core-guide-images/57.webp
create mode 100644 assets/img/passport-core-guide-images/58.webp
create mode 100644 assets/img/passport-core-guide-images/59.webp
create mode 100644 assets/img/passport-core-guide-images/60.webp
create mode 100644 assets/img/passport-core-guide-images/61.webp
create mode 100644 assets/img/passport-core-guide-images/62.webp
create mode 100644 assets/img/passport-core-guide-images/63.webp
create mode 100644 assets/img/passport-core-guide-images/64.webp
create mode 100644 assets/img/passport-core-guide-images/65.webp
create mode 100644 assets/img/passport-core-guide-images/66.webp
create mode 100644 assets/img/passport-core-guide-images/67.webp
create mode 100644 assets/img/passport-core-guide-images/68.webp
create mode 100644 assets/img/passport-core-guide-images/69.webp
create mode 100644 assets/img/passport-core-guide-images/70.webp
create mode 100644 assets/img/passport-core-guide-images/71.webp
create mode 100644 assets/img/passport-core-guide-images/72.webp
create mode 100644 assets/img/passport-core-guide-images/73.webp
create mode 100644 assets/img/passport-core-guide-images/74.webp
create mode 100644 assets/img/passport-core-guide-images/75.webp
create mode 100644 assets/img/passport-core-guide-images/76.webp
create mode 100644 assets/img/passport-core-guide-images/77.webp
create mode 100644 assets/img/passport-core-guide-images/78.webp
create mode 100644 assets/img/passport-core-guide-images/79.webp
create mode 100644 assets/img/passport-core-guide-images/80.webp
create mode 100644 assets/img/passport-core-guide-images/81.webp
create mode 100644 assets/img/passport-core-guide-images/82.webp
create mode 100644 assets/img/passport-core-guide-images/83.webp
create mode 100644 assets/img/passport-core-guide-images/84.webp
create mode 100644 assets/img/passport-core-guide-images/85.webp
create mode 100644 assets/img/passport-core-guide-images/86.webp
create mode 100644 assets/img/passport-core-guide-images/87.webp
create mode 100644 assets/img/passport-core-guide-images/88.webp
create mode 100644 assets/img/passport-core-guide-images/89.webp
create mode 100644 assets/img/passport-core-guide-images/90.webp
create mode 100644 assets/img/passport-core-guide-images/cover.webp
create mode 100644 assets/img/passport-core-guide-images/header.png
create mode 100644 assets/img/passport-core-guide-images/header.webp
create mode 100644 assets/img/passport-core-guide-images/qr-code_Dark.png
create mode 100644 assets/img/payjoin/1.webp
create mode 100644 assets/img/payjoin/2.webp
create mode 100644 assets/img/payjoin/3.webp
create mode 100644 assets/img/payjoin/cover.webp
create mode 100644 assets/img/payjoin/logo.webp
create mode 100644 assets/img/stonewallx2/01.webp
create mode 100644 assets/img/stonewallx2/02.webp
create mode 100644 assets/img/stonewallx2/03.webp
create mode 100644 assets/img/stonewallx2/04.webp
create mode 100644 assets/img/stonewallx2/05.webp
create mode 100644 assets/img/stonewallx2/06.webp
create mode 100644 assets/img/stonewallx2/07.webp
create mode 100644 assets/img/stonewallx2/08.webp
create mode 100644 assets/img/stonewallx2/09.webp
create mode 100644 assets/img/stonewallx2/10.webp
create mode 100644 assets/img/stonewallx2/11.webp
create mode 100644 assets/img/stonewallx2/12.webp
create mode 100644 assets/img/stonewallx2/13.webp
create mode 100644 assets/img/stonewallx2/14.webp
create mode 100644 assets/img/stonewallx2/15.webp
create mode 100644 assets/img/stonewallx2/16.webp
create mode 100644 assets/img/stonewallx2/17.webp
create mode 100644 assets/img/stonewallx2/18.webp
create mode 100644 assets/img/stonewallx2/19.webp
create mode 100644 assets/img/stonewallx2/20.webp
create mode 100644 assets/img/stonewallx2/21.webp
create mode 100644 assets/img/stonewallx2/22.webp
create mode 100644 assets/img/stonewallx2/23.webp
create mode 100644 assets/img/stonewallx2/24.webp
create mode 100644 assets/img/stonewallx2/e.png
create mode 100644 assets/img/vanilla-dojo-guide-images/01.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/02.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/03.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/04.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/05.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/06.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/07.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/08.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/09.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/10.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/11.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/12.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/13.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/14.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/15.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/16.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/17.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/18.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/19.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/20.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/21.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/22.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/23.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/24.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/25.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/26.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/27.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/28.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/29.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/30.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/31.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/32.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/33.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/34.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/35.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/36.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/37.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/38.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/39.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/40.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/41.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/42.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/43.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/44.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/45.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/46.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/47.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/cover.webp
create mode 100644 assets/img/vanilla-dojo-guide-images/header.png
create mode 100644 assets/img/vanilla-dojo-guide-images/logo.webp
create mode 100644 passport-core-advanced.md
create mode 100644 passport-core.md
create mode 100644 vanilla-dojo.md
diff --git a/articles.md b/articles.md
index 9a9becd..46cc206 100644
--- a/articles.md
+++ b/articles.md
@@ -17,77 +17,81 @@ tags: [node, wallet, security, privacy, nokyc]
-
# Wallets
-| Name | Description | Published |
+| Name | Description | Published |
|----------------------------------|----------|-----------------------------------------------------------------|----------------------------------------|
-| [Blixt 101](/blixt) | Collaborative post with [Expatriotic](https://twitter.com/expatri0tic) on using Blixt wallet | 05 Jul 2023 |
-| [Stack Duo 101](/stack-duo) | Guest post by [Bitlevi](https://twitter.com/Bit_levi) on using Stack Duo mobile wallet | Updated 09 Aug 2023 |
-| [Passport 101](/passport) | Basic explainer on setting up and using Passport HWW | 07 Jul 2021 |
-| [Specter Desktop 101](/specter) | Basic explainer on setting up and using Specter desktop wallet | Updated 13 Apr 2021 |
-| [Sparrow Wallet 101](/sparrow) | Basic explainer on setting up and using Sparrow desktop wallet | Updated 21 May 2021 |
-| [Sentinel 101](/sentinel) | Basic explainer on setting up and using Sentinel 'watch only' wallet | 01 Sep 2020 |
-| [Blue Wallet 101](/blue) | Basic explainer on setting up and using Blue Wallet | 11 Jul 2020 |
-| [Zap 101](/zap) | Basic explainer on setting up and using Zap | 06 Jul 2020 |
-| [Coldcard 101](/coldcard) | Basic explainer on setting up and using a Coldcard | 03 Jul 2020 |
-| [Zeus 101](/zeus) | Basic explainer on setting up and using Zeus | 12 Jun 2020 |
-| [OpenDime 101](/opendime) | Basic explainer on setting up and using an an Opendime | 11 Jun 2020 |
-| [Samourai Wallet 101](/samourai) | Basic explainer of Samourai Wallet | 01 May 2020 |
+| [Blixt 101](/blixt) | Collaborative post with [Expatriotic](https://twitter.com/expatri0tic) on using Blixt wallet | 05 Jul 2023 |
+| [Stack Duo 101](/stack-duo) | Guest post by [Bitlevi](https://twitter.com/Bit_levi) on using Stack Duo mobile wallet | Updated 09 Aug 2023 |
+| [Passport 101](/passport) | Basic explainer on setting up and using Passport HWW | 07 Jul 2021 |
+| [Specter Desktop 101](/specter) | Basic explainer on setting up and using Specter desktop wallet | Updated 13 Apr 2021 |
+| [Sparrow Wallet 101](/sparrow) | Basic explainer on setting up and using Sparrow desktop wallet | Updated 21 May 2021 |
+| [Sentinel 101](/sentinel) | Basic explainer on setting up and using Sentinel 'watch only' wallet | 01 Sep 2020 |
+| [Blue Wallet 101](/blue) | Basic explainer on setting up and using Blue Wallet | 11 Jul 2020 |
+| [Zap 101](/zap) | Basic explainer on setting up and using Zap | 06 Jul 2020 |
+| [Coldcard 101](/coldcard) | Basic explainer on setting up and using a Coldcard | 03 Jul 2020 |
+| [Zeus 101](/zeus) | Basic explainer on setting up and using Zeus | 12 Jun 2020 |
+| [OpenDime 101](/opendime) | Basic explainer on setting up and using an an Opendime | 11 Jun 2020 |
+| [Samourai Wallet 101](/samourai) | Basic explainer of Samourai Wallet | 01 May 2020 |
+| [Ashigaru Mobile](/ashigaru-mobile) | Detailed guide on Ashigaru Mobile wallet and all postmix spending tools | 29 Nov 2025 |
+| [Passport Core Advanced](/passport-core-advanced) | How to seup Passport Core manually with Sparrow | 29 Nov 2025 |
+| [Passport Core](/passport-core) | How to setup Passport Core easily with Envoy | 29 Nov 2025 |
# Nodes
-| Name | Description | Published |
+| Name | Description | Published |
|----------------------------------|----------|-----------------------------------------------------------------|----------------------------------------|
-| [Migrating your Samourai Wallet to RoninDojo](/rdmigrate) | Connect or migrating Samourai Wallet to RoninDojo guide | 30 Jul 2020 |
-| [RoninDojo 101](/ronindojo) | Feature breakdown of RoninDojo | 07 Jun 2020 |
-| [Rescanning XPUBs using DMT](/dojo) | Guide to restore balances using Dojo Maintenance Tool | 24 May 2020 |
-| [myNode 101](/mynode) | Feature breakdown of myNode | 16 May 2020 |
+| [Migrating your Samourai Wallet to RoninDojo](/rdmigrate) | Connect or migrating Samourai Wallet to RoninDojo guide | 30 Jul 2020 |
+| [RoninDojo 101](/ronindojo) | Feature breakdown of RoninDojo | 07 Jun 2020 |
+| [Rescanning XPUBs using DMT](/dojo) | Guide to restore balances using Dojo Maintenance Tool | 24 May 2020 |
+| [myNode 101](/mynode) | Feature breakdown of myNode | 16 May 2020 |
+| [Vanilla Dojo](/vanilla-dojo) | Guide to verify and setup vanilla Dojo | 29 Nov 2025 |
# Security
-| Name | Description | Published |
+| Name | Description | Published |
|----------------------------------|----------|-----------------------------------------------------------------|----------------------------------------|
-| [Verifying Software 101](/verifysoftware) | Guide to help users verify the software they download | 10 Jan 2021 |
-| [10 ways to lose your bitcoin](/lostbitcoin) | Tips for newcomers to avoid losing their bitcoin | 12 Dec 2020 |
+| [Verifying Software 101](/verifysoftware) | Guide to help users verify the software they download | 10 Jan 2021 |
+| [10 ways to lose your bitcoin](/lostbitcoin) | Tips for newcomers to avoid losing their bitcoin | 12 Dec 2020 |
# Privacy
-| Name | Description | Published |
+| Name | Description | Published |
|----------------------------------|----------|------------------------------------------------------|----------------------------------------|
-| [GrapheneOS 101](/grapheneos) | The ultimate guide to phone privacy with GrapheneOS | 10 Aug 2023 |
-| [CalyxOS 101](/calyxos) | CalyxOS installation guide | 11 Mar 2021 |
-| [PayNyms 101](/paynym) | Explainer on BIP47 PayNyms | 02 Mar 2021 |
-| [Whirlpool + Postmix FAQ](/whirlpool) | Whirlpool explainer and FAQ | 08 Aug 2020 |
-| [Bitcoin Privacy Tips](/privacytips) | Privacy tips for interacting with Bitcoin | 26 Jun 2020 |
-| [Your First Mobile Coinjoin](/mobilecoinjoin) | Learn to use Whirlpool on mobile | 20 Jun 2020 |
-| [Deal With Coinjoin Change Outputs](/doxxic) | Dealing with toxic change | 15 Jun 2020 |
-| [Coinjoin to Cold Implications](/csimplications) | Considerations when spending to cold storage | 03 May 2020 |
+| [GrapheneOS 101](/grapheneos) | The ultimate guide to phone privacy with GrapheneOS | 10 Aug 2023 |
+| [CalyxOS 101](/calyxos) | CalyxOS installation guide | 11 Mar 2021 |
+| [PayNyms 101](/paynym) | Explainer on BIP47 PayNyms | 02 Mar 2021 |
+| [Whirlpool + Postmix FAQ](/whirlpool) | Whirlpool explainer and FAQ | 08 Aug 2020 |
+| [Bitcoin Privacy Tips](/privacytips) | Privacy tips for interacting with Bitcoin | 26 Jun 2020 |
+| [Your First Mobile Coinjoin](/mobilecoinjoin) | Learn to use Whirlpool on mobile | 20 Jun 2020 |
+| [Deal With Coinjoin Change Outputs](/doxxic) | Dealing with toxic change | 15 Jun 2020 |
+| [Coinjoin to Cold Implications](/csimplications) | Considerations when spending to cold storage | 03 May 2020 |
+| [Ashigaru Whirlpool](/ashigaru-terminal-whirlpool) | How to whirlpool with Ashigaru Terminal | 29 Nov 2025 |
-# no-KYC
+# no-KYC
-| Name | Description | Published |
+| Name | Description | Published |
|----------------------------------|----------|-----------------------------------------------------------------|----------------------------------------|
-| [Azteco Bitcoin Vouchers](/azteco) | Guest post by [Bitlevi](https://twitter.com/Bit_levi) on using Azteco Vouchers | 31 Jul 2023 |
-| [AgoraDesk P2P Exchange](/agora) | Guest post by [Bitlevi](https://twitter.com/Bit_levi) on using AgoraDesk | 10 Jul 2023 |
-| [Peach Bitcoin Mobile P2P Exchange](/peach) | Guest post by [Bitlevi](https://twitter.com/Bit_levi) on using Peach Bitcoin | Updated 09 Aug 2023 |
-| [RoboSats Lightning P2P Exchange](/robosats) | Guide for purchasing P2P sats via Lightning using RoboSats | 22 May 2023 |
-| [Creating A Buy Offer On Hodl Hodl](/hodlhodloffer) | Guide for creating a buy offer using Hodl Hodl | 11 Sep 2020 |
-| [10 Steps To Your First no-KYC Bitcoin (Hodl Hodl)](/hodlhodl) | Guide for purchasing bitcoin on Hodl Hodl | 04 Aug 2020 |
-| [10 Steps To Your First no-KYC Bitcoin](/bisq) | Guide for purchasing bitcoin on Bisq | 08 Jun 2020 |
+| [Azteco Bitcoin Vouchers](/azteco) | Guest post by [Bitlevi](https://twitter.com/Bit_levi) on using Azteco Vouchers | 31 Jul 2023 |
+| [AgoraDesk P2P Exchange](/agora) | Guest post by [Bitlevi](https://twitter.com/Bit_levi) on using AgoraDesk | 10 Jul 2023 |
+| [Peach Bitcoin Mobile P2P Exchange](/peach) | Guest post by [Bitlevi](https://twitter.com/Bit_levi) on using Peach Bitcoin | Updated 09 Aug 2023 |
+| [RoboSats Lightning P2P Exchange](/robosats) | Guide for purchasing P2P sats via Lightning using RoboSats | 22 May 2023 |
+| [Creating A Buy Offer On Hodl Hodl](/hodlhodloffer) | Guide for creating a buy offer using Hodl Hodl | 11 Sep 2020 |
+| [10 Steps To Your First no-KYC Bitcoin (Hodl Hodl)](/hodlhodl) | Guide for purchasing bitcoin on Hodl Hodl | 04 Aug 2020 |
+| [10 Steps To Your First no-KYC Bitcoin](/bisq) | Guide for purchasing bitcoin on Bisq | 08 Jun 2020 |
-# Misc
+# Misc
-| Name | Description | Published |
+| Name | Description | Published |
|----------------------------------|----------|-----------------------------------------------------------------|----------------------------------------|
-| [How To Fork an Open Source Project](/fork) | Guest post by [Bitlevi](https://twitter.com/Bit_levi) on contributing to FOSS projects | 23 May 2023 |
\ No newline at end of file
+| [How To Fork an Open Source Project](/fork) | Guest post by [Bitlevi](https://twitter.com/Bit_levi) on contributing to FOSS projects | 23 May 2023 |
\ No newline at end of file
diff --git a/ashigaru-mobile.md b/ashigaru-mobile.md
new file mode 100644
index 0000000..03ae6fb
--- /dev/null
+++ b/ashigaru-mobile.md
@@ -0,0 +1,874 @@
+---
+layout: page
+title: Ashigaru Mobile
+subtitle: How to Setup and Use Ashigaru Mobile and its spending tools to Privately Secure and Manage your Bitcoin
+---
+
+
+ Prerequisites |
+ Install & Verify |
+ Initialize & Wallet |
+ Settings |
+ Receive |
+ Send |
+ Recovery |
+ Update |
+ Donate |
+ Spending Tools |
+ Stonewall |
+ Stonewall x2 |
+ Payjoin |
+ Stowaway |
+ Ricochet
+
+ Original Author
+
+
+
+
+
+
+
+Ashigaru is a mobile Bitcoin wallet that continues the work of the Samourai Wallet project in a new form. The software emerged in a specific context: in April 2024, Samourai Wallet’s founders were arrested by U.S. authorities and their servers were seized. Although the Samourai app itself remained usable, it is currently no longer maintained. Ashigaru is a free and open fork of Samourai Wallet, maintained by an anonymous team, to preserve Samourai’s features and its original philosophy: defending the privacy and sovereignty of Bitcoin users.
+
+Ashigaru keeps the core DNA of Samourai: a similar interface, a self‑custodial approach, open‑source code, and a strong focus on privacy. The code is licensed under GNU GPLv3, which guarantees anyone can audit, modify, or redistribute the software.
+
+Ashigaru integrates a suite of advanced tools for privacy and UTXO management:
+- Whirlpool, a coinjoin protocol based on Zerolink, to break deterministic links between transaction inputs and outputs without surrendering custody.
+- PayNym, which implements reusable payment codes (BIP47), now represented via “Pepehash” avatars.
+- Ricochet, which adds intermediate hops to transactions to complicate tracing.
+- Coin Control to precisely select, freeze, and label your UTXOs.
+- Batch Spending to reduce fees by grouping multiple payments into one transaction.
+- Stealth Mode, which hides the app behind a decoy launcher to pass unnoticed during a physical phone inspection.
+- Advanced spending tools to optimize privacy (payjoin, stonewall etc).
+- An optimized recovery flow using a BIP39 passphrase.
+- Automatic fee selection to optimize miner fees.
+
+
+
+Ashigaru is designed for users who are mindful of transaction traceability on Bitcoin. Whether you care about preserving privacy, you’re an experienced bitcoiner focused on self‑custody, or you face heightened surveillance risks, this wallet gives you the tools to take back control of your on‑chain activity.
+
+Ashigaru is available as a mobile app, which we’ll explore in this tutorial. It has a companion desktop application called [Ashigaru Terminal](https://bitcoiner.guide/ashigaru-terminal-whirlpool), which can be used to initiate whirlpool coinjoins.
+
+
+
+In this tutorial, we’ll cover Ashigaru’s basic use: installation, connecting to Dojo, backups, receiving, sending bitcoin and using all the avaliable postmix spending tools.
+
+## 1. Prerequisites for Ashigaru
+
+Ashigaru requires a few prerequisites to work correctly. First, it is not available from mainstream app stores like Google Play or the App Store. It must be sideloaded on your phone from its .apk file, downloaded via Tor. Therefore, if you use an iPhone, this method will not work: you will need an Android device.
+
+To download the .apk via Tor, you’ll need a browser that can access .onion sites. The easiest way is to install Tor Browser on your phone, available on the [Google Play Store](https://play.google.com/store/apps/details?id=org.torproject.torbrowser) or directly [via its .apk](https://www.torproject.org/download/#android).
+
+
+
+Most modern smartphones block app installs from unknown sources by default. You will need to temporarily enable this option for Tor Browser in your device settings to allow the install. Once Ashigaru is installed, disable this option again to keep your phone secure.
+
+> Only enable “Install unknown apps” temporarily, and restrict it to Tor Browser for the install — then disable it again.
+{: .prompt-warning }
+
+Another critical prerequisite for using Ashigaru is running a Dojo Bitcoin node. For security and sovereignty, the Ashigaru team does not maintain centralized servers to connect your app. You must run your own Dojo instance or connect to one operated by someone you trust.
+
+Dojo lets your Ashigaru app query blockchain data, view the balance of your addresses, and broadcast transactions to the Bitcoin network.
+
+To learn more about Dojo and how to install it, check out the [Vanilla Samourai Dojo Guide](https://bitcoiner.guide/vanilla-dojo/) or download and run dojo on your [start9 directly](https://marketplace.start9.com/) by switching to the community registry.
+
+If you truly cannot run your own Dojo, you can find people willing to share their instance on [dojobay.pw](https://www.dojobay.pw/mainnet/). This can be a temporary solution, but for the long term, it is strongly recommended to run your own Dojo to ensure sovereignty and privacy.
+
+> Relying on a third‑party Dojo introduces trust and privacy trade‑offs. Treat it as a temporary measure and migrate to your own Dojo as soon as feasible.
+{: .prompt-warning }
+
+## 2. Verify and install the Ashigaru app
+
+### 2.1. Download Ashigaru
+
+On your phone, open Tor Browser and go to [Ashigaru’s official website](https://ashigaru.rs/download/), under the “Download” section. Tap “Download for Android” to get the .apk installer.
+
+
+
+Before installing, we will verify the app’s authenticity and integrity. This is especially important when installing from a .apk.
+
+### 2.2. Verify the Ashigaru app
+
+Back on [Ashigaru’s official website](https://ashigaru.rs/download/) in the “Download” section, copy the message shown under “SHA-256 Hash of the APK file.” Copy the entire block, from “BEGIN PGP SIGNED MESSAGE” to “END PGP SIGNATURE.”
+
+
+
+Still on your phone, open a new tab in Tor Browser and visit the [Keybase verify tool](https://keybase.io/verify). Paste the message you just copied and tap “Verify.”
+
+
+
+If the signature is valid, Keybase will confirm the file was signed by Ashigaru’s developers. You can also tap the “ashigarudev” profile shown by Keybase and verify that the key fingerprint matches exactly: A138 06B1 FA2A 676B.
+
+If an error appears at this step, the signature is invalid. In that case, do not install the APK. Restart the process from the beginning or ask the community for help before proceeding.
+
+
+
+Keybase provided the app’s hash. Next, we’ll verify that the hash of the .apk you downloaded matches the verified value from Keybase. Go to [HASH FILE ONLINE](https://hash-file.online/).
+
+
+
+Tap “BROWSE...” and select the .apk file you downloaded in step 2.1.
+Choose the SHA-256 hashing function, then tap “CALCULATE HASH” to compute your file’s hash.
+
+
+
+The site will display your .apk file’s hash. Compare it to the value you verified on Keybase.io. If both hashes match exactly, the authenticity and integrity checks are successful. You can now proceed with the installation.
+
+
+
+> Never install the .apk if the signature check or the hash comparison fails — investigate first.
+{: .prompt-danger }
+
+### 2.3. Install the Ashigaru app
+
+To install, open your phone’s file manager and go to the downloads folder. Tap the .apk file we just verified, then confirm the installation when prompted.
+
+Ashigaru is now installed on your phone.
+
+## 3. Initialize the app and create a Bitcoin wallet
+
+On first launch, select “MAINNET.”
+
+
+
+Tap “Get Started.”
+
+
+
+We’ll now create a new Bitcoin wallet. Tap “Create a new wallet.”
+
+
+
+### 3.1. Create a Bitcoin wallet
+
+Ashigaru requires a BIP39 passphrase. Choose your passphrase and enter it in the fields. It should be as long and random as possible to resist brute‑force attacks.
+
+Immediately make a physical backup of this passphrase. This step is crucial: if you lose your phone and you no longer have this passphrase, you will not be able to access the bitcoin secured by your Ashigaru wallet. This same passphrase is also used to encrypt the wallet recovery file.
+
+If you don’t fully understand what a passphrase is or how it works, WATCH [THIS](https://www.youtube.com/watch?v=l1ISySyy72Y) passphrase overview from BTCSESSIONS. It’s critical: misunderstanding passphrase usage can cause irreversible loss of funds.
+
+Once entered, tap “NEXT.”
+
+
+
+Next, choose a PIN code. This code unlocks your Ashigaru wallet and protects it against unauthorized physical access. It is not part of key derivation for your wallet. This means that even without the PIN, anyone who has your mnemonic and passphrase can regain access to your bitcoin.
+
+Choose a long, random PIN. Keep a backup in a location separate from your phone so they are not compromised together.
+
+
+
+After setting the PIN, Ashigaru displays your wallet’s mnemonic phrase. Warning: this phrase, combined with your passphrase, gives full access to your bitcoin. Anyone with it can steal your funds, even without your phone. This 12‑word list restores your wallet if your phone is lost, stolen, or broken. Back it up carefully on physical media (paper or metal).
+
+Never store this phrase digitally — doing so exposes your funds to theft. Depending on your security model, you can make multiple physical copies, but never split the phrase. Keep the words in order and number them.
+
+Finally, never store the mnemonic phrase and the passphrase in the same place. If both are compromised at once, an attacker can access your wallet.
+
+
+
+Ashigaru will then ask you to confirm your passphrase again. Use this step to double‑check your physical backup is accurate.
+
+
+
+> Your mnemonic + passphrase = full wallet access. Treat both with extreme caution — they must be kept private, offline, and never digitized.
+{: .prompt-danger }
+
+### 3.2. Connect a Dojo
+
+Next, connect to your Dojo. As explained earlier, Ashigaru requires a Dojo to interact with the Bitcoin network.
+
+Log in to your Dojo’s Maintenance Tool and open the “PAIRING” menu.
+
+
+
+In Ashigaru, tap “Scan QR,” then scan the pairing QR displayed by your DMT. Tap “Continue” to confirm.
+
+
+
+Enter your PIN to unlock the wallet. You’ll see the synchronization screen. It’s normal to see PayNym‑related errors at this stage because the wallet is new. Just tap “Continue.”
+
+
+
+You’ll then arrive at your wallet’s home screen.
+
+
+
+## 4. Configure the Ashigaru app
+
+To access app settings, tap your PayNym image at the top left, then select “Settings.”
+
+
+
+You’ll find several options to tailor Ashigaru to your needs. Two settings are especially important to enable early on.
+
+First, open “Security > Stealth mode,” then enable it if you need it. Stealth Mode hides Ashigaru behind a normal‑looking app on your phone. The goal is to prevent anyone from identifying Ashigaru during a physical inspection of your phone.
+
+
+
+Each decoy app has a specific method to unlock Ashigaru’s real interface. For example, if you choose the calculator, the Ashigaru icon disappears from your home screen and is replaced by a fake calculator. When opened, it works like a regular calculator, but to access Ashigaru, tap the “=” symbol five times quickly.
+
+The second key setting is RBF (Replace‑by‑Fee). This lets you bump transaction fees if a transaction is stuck in mempools due to low fees. Enable it in “Transactions > Spend using RBF.”
+
+
+
+Tip: You can toggle the wallet display unit between BTC and sats by tapping the total balance on the home screen.
+
+## 5. Receive bitcoin in Ashigaru
+
+Once your wallet is ready, you can receive sats. Tap the “+” button in the bottom‑right corner, then tap the green “Receive” button.
+
+
+
+Ashigaru shows you the first unused receiving address to avoid address reuse (which is very harmful to privacy). Share this address with the individual or service sending you bitcoin.
+
+
+
+Once the transaction is broadcast, it will automatically appear on the app’s home screen.
+
+
+
+## 6. Send bitcoin with Ashigaru
+
+Once you have funds in Ashigaru, you can send them. Tap the “+” button at the bottom right, then select the red “Send” button.
+
+
+
+Choose the account to spend from. For now, we haven’t covered the “Postmix” account (used for coinjoins and covered in another [tutorial](https://bitcoiner.guide/ashigaru-terminal-whirlpool)). We’ll send from the main deposit account.
+
+
+
+Enter the transaction details: amount to send and the recipient’s Bitcoin address.
+
+
+
+By tapping the three dots in the top‑right, then “Show unspent outputs,” you can precisely select which UTXOs to spend to improve your privacy.
+
+
+
+When everything is set, tap the white arrow at the bottom to continue.
+
+You’ll see a summary page with all transaction details:
+- Destination: double‑check the recipient address and amount.
+- Fees: review the fee rate automatically selected by Ashigaru; adjust via “MANAGE” if needed.
+- Transaction: shows the transaction type (simple here); Ashigaru also supports other privacy‑optimized spending types (covered in another tutorial).
+- Transaction Alert (red): flags patterns recognized by chain‑analysis heuristics that may degrade privacy. Tap to see details. For example, if your amount is a round number (e.g., “3000 sats”), it may reveal which output is the spend and which is the change.
+- Label: you can add a label to remember the transaction’s purpose.
+
+Once everything is correct, use the green arrow to send. Press and hold the arrow, then slide it to the right to confirm.
+
+
+
+Your transaction is now broadcast on the Bitcoin network.
+
+
+
+## 7. Recover your Ashigaru wallet
+
+Ashigaru wallet recovery differs slightly from a standard Bitcoin wallet, as it inherits Samourai Wallet’s methods. If you lose access to your wallet (PIN forgotten, app uninstalled, or phone lost), you have several options to recover your funds.
+
+If you still have access to your phone or you backed up the file, the simplest method is using the backup file “ashigaru.txt.” This file contains everything needed to restore your wallet on a new Ashigaru instance (or in Sparrow Wallet), but it is encrypted with the passphrase you set in step 3.1. You must have both the “ashigaru.txt” file and your passphrase to use this method.
+
+With these two items, you can, for example, restore your wallet in Sparrow Wallet.
+
+
+
+If you don’t have the “ashigaru.txt” file, you can still access your funds using your mnemonic phrase and passphrase, like any other BIP39 wallet. It’s recommended to recover either in a new Ashigaru instance or directly in Sparrow Wallet, which simplifies retrieving Whirlpool derivation paths (if you used it). Otherwise, you can import into any BIP39‑compatible software by entering derivation paths manually.
+
+As you’ve seen, regardless of the recovery method, the passphrase is indispensable. Make sure it is securely backed up. You can keep multiple copies depending on your security model.
+
+> The passphrase is critical for recovery. Without it, even a correct mnemonic won’t unlock your wallet.
+{: .prompt-danger }
+
+## 8. Update the app
+
+To update Ashigaru (since it was installed via .apk rather than the Play Store), you’ll need to download the new .apk for the updated version and install it manually.
+
+Repeat the steps from section 2 of this tutorial. The only difference is that when you tap the .apk to start installation, your Android phone should offer “Update” and not “Install.”
+
+
+
+This is very important: if Android shows “Install” instead of “Update,” you’re likely installing a fraudulent version. Stop immediately.
+
+As with the initial install, carefully verify the .apk’s authenticity and integrity before proceeding.
+
+To know when a new version is available, check the official Ashigaru site occasionally. Ashigaru is a stable, mature app inherited from Samourai Wallet, so updates are relatively less frequent than in newer projects.
+
+> Always verify signatures and hashes for each new .apk prior to updating.
+{: .prompt-warning }
+
+## 9. Donate to the Ashigaru project
+
+Ashigaru is open source. To support development, you can donate directly from the app via PayNym.
+
+Tap your PayNym at the top‑right of the interface, then select your payment code starting with “PM…”.
+
+
+
+Tap the “+” button at the bottom‑right.
+
+
+
+Choose “Ashigaru Open Source Project” as the recipient.
+
+
+
+Tap “CONNECT” to establish the BIP47 (PayNym) communication channel.
+
+
+
+Once the notification transaction confirms, you can send donations to the project by tapping the small white arrow at the top‑right of the interface.
+
+
+
+You now know how to use Ashigaru’s core features. In [this guide](https://bitcoiner.guide/ashigaru-terminal-whirlpool), we explore advanced spending types and Whirlpool — the coinjoin implementation inherited from Samourai Wallet.
+
+## Spending tools overview
+
+Below, we transition from basic sends (covered in Section 6) to Ashigaru’s privacy‑enhancing spending tools. To minimize repetition:
+
+When steps begin with “Start a send,” use the standard flow described earlier (tap “+” → “Send,” choose account, enter details).
+
+Use Coin Control (Section 6) to select UTXOs that best fit each tool’s privacy goals.
+
+## Stonewall
+
+> Break the assumptions of blockchain analysis with mathematically provable doubt between the sender and the recipient of your transactions.
+
+### What is a Stonewall transaction?
+
+Stonewall is a specific form of Bitcoin transaction that boosts user privacy by imitating a two‑party coinjoin — without actually being one. The transaction is not collaborative. A single user can construct it alone, using only their own UTXOs as inputs. You can create a Stonewall transaction anytime, without needing to coordinate with another user.
+
+Mechanics:
+- Inputs: the sender uses 2 of their own UTXOs
+- Outputs: the transaction produces 4 outputs, including 2 outputs that are exactly the same amount; the other 2 are change
+- Among the 2 equal‑amount outputs, only one goes to the actual payment recipient
+
+There are only two roles in a Stonewall transaction:
+- The sender, who makes the actual payment
+- The recipient, who can ignore the specific nature of the transaction and simply expects a payment
+
+Let’s use a simple example. Alice buys a loaf of bread for 4,000 sats and wants to pay in bitcoin while keeping her payment private. She decides to build a Stonewall transaction.
+
+
+
+Analyzing this transaction, the baker receives 4,000 sats for the bread. Alice used two inputs: 10,000 sats and 15,000 sats. The outputs on Alice’s side are 4,000 sats, 6,000 sats, and 11,000 sats. Alice’s net balance change is −4,000 sats, which matches the price.
+
+> For clarity, the example omits mining fees. In reality, the sender pays all transaction fees.
+{: .prompt-info }
+
+### What’s the difference between Stonewall and Stonewall x2?
+
+Stonewall and Stonewall x2 share the same external pattern. The difference is collaboration:
+- Stonewall is non‑collaborative — the sender creates it alone
+- Stonewall x2 is collaborative — a second participant (“the collaborator”) contributes an input and receives their entire contribution back in the outputs (minus fees)
+
+Continuing the bakery example: if Alice wanted Stonewall x2, she would collaborate with Bob. Each would contribute one input. Bob would receive back all his input on the outputs. The baker would receive the 4,000 sats payment as before, and Alice would end up with her initial balance minus the bread cost.
+
+
+
+From the outside, the transaction pattern appears identical.
+
+
+
+In short: Stonewall and Stonewall x2 share the same structure. Stonewall is built alone; Stonewall x2 involves cooperation between two users.
+
+> Observers cannot distinguish Stonewall from Stonewall x2 with on‑chain data alone. This ambiguity is the point — more doubt, more privacy.
+{: .prompt-info }
+
+### Why use a Stonewall transaction?
+
+The Stonewall structure adds meaningful entropy and confuses common chain‑analysis heuristics. From the outside, it can look like a small two‑party coinjoin. But in reality (like Stonewall x2), it’s just a payment. This duality introduces uncertainty and can lead watchers down false trails.
+
+Returning to Alice’s bakery purchase, the blockchain view might look like this:
+
+
+
+A typical heuristic‑driven conclusion could be: “Two people performed a small coinjoin, each with one input and two outputs.”
+
+
+
+But you know the truth: one output went to the baker, both inputs belong to Alice, and she received three outputs of change.
+
+
+
+Even if an observer recognizes the Stonewall pattern, they still cannot know:
+- Which of the two equal‑amount outputs is the payment
+- Whether the two inputs belong to two different people or to one person combining them
+
+The second point exists because Stonewall x2 (collaborative) and Stonewall (non‑collaborative) share the same pattern. Without additional context, differentiating them is impossible, which adds yet more doubt to the spend.
+
+
+
+> Stonewall introduces uncertainty about input ownership and payment destination. This uncertainty is privacy.
+{: .prompt-tip }
+
+### How to do a Stonewall transaction in Ashigaru
+
+Stonewall was originally developed by the Samourai Wallet team and is now implemented in Ashigaru, the fork created after the Samourai developers’ arrest. Install Ashigaru and create a wallet as demonstrated above.
+
+Unlike Stowaway or Stonewall x2 (“cahoots”), Stonewall does not require PayNyms. It can be executed directly, without preparation or collaboration.
+
+In practice, Ashigaru generates Stonewall automatically for each spend when your wallet has sufficient UTXOs.
+
+- Start a send using the standard flow (Section 6).
+
+
+
+- Choose the account to spend from.
+
+
+
+- Enter recipient address and amount, then confirm.
+
+
+
+- Adjust fees if needed; note the transaction type is “STONEWALL.” Tap “PREVIEW” for more details.
+
+
+
+You’ll see the Stonewall pattern: 2 inputs of equal amount, 2 outputs of equal amount, plus change outputs, and (in this example) an additional input to reach the payment sum.
+
+
+
+If you prefer a simple payment, tap the pencil icon (top‑right), then switch “STONEWALL” to “Simple.”
+
+
+
+After checking all details, slide the green arrow at the bottom to sign and broadcast.
+
+
+
+You now know how to make a Stonewall transaction and, more importantly, how it works. To further your privacy, read the [Ashigaru Terminal guide](https://bitcoiner.guide/ashigaru-terminal-whirlpool) explaining coinjoins via Whirlpool.
+
+## Stonewall x2
+
+> Make every spend a coinjoin.
+
+### What is a Stonewall x2 transaction?
+
+Stonewall x2 is a specific form of Bitcoin transaction that increases user privacy by collaborating with a third party who is not involved in the actual payment. This method simulates a mini‑coinjoin between two participants while making a payment to a third party. Stonewall x2 transactions are available in the Ashigaru Mobile app, a fork of Samourai Wallet (the team that originally created this transaction type).
+
+Mechanics:
+- You use one of your own UTXOs to fund the payment.
+- A collaborator contributes one of their own UTXOs.
+- The transaction has four outputs:
+ - Two equal‑amount outputs: one goes to the payment recipient; the other returns to the collaborator.
+ - A third output returns the rest of the collaborator’s input (so their net is neutral, minus mining fees).
+ - A fourth output is your change.
+
+Roles in Stonewall x2:
+- The sender (payer), who makes the actual payment
+- The collaborator, who contributes bitcoin to improve the transaction’s anonymity set and receives all their funds back (net‑neutral, minus mining fees)
+- The recipient, who can ignore the transaction’s structure and simply receives a payment
+
+Example: Alice buys a loaf for 4,000 sats and wants privacy. She collaborates with her friend Bob.
+
+
+
+Analyzing the transaction:
+- The baker receives 4,000 sats
+- Alice inputs 10,000 sats and receives 6,000 sats as change (net −4,000 sats)
+- Bob inputs 15,000 sats and receives two outputs: 4,000 sats and 11,000 sats (net 0)
+
+> For clarity, mining fees are omitted in the example. In practice, transaction fees are split equally between the sender and the collaborator.
+{: .prompt-info }
+
+### What’s the difference between Stonewall and Stonewall x2?
+
+A Stonewall x2 works exactly like a Stonewall in pattern, except that x2 is collaborative while Stonewall is not. Stonewall x2 involves a third party (outside the payment) who contributes bitcoin to boost privacy. In a regular Stonewall, the “collaborator’s role” is played by the sender alone.
+
+Continuing the bakery example: if Alice didn’t find a collaborator like Bob, she could do a Stonewall by herself — both inputs would be hers, and she would receive three change outputs.
+
+
+
+From the outside, the pattern would look the same:
+
+
+
+Practical logic for Ashigaru spending tools:
+- If the merchant does not support Payjoin/Stowaway, you can perform a collaborative spend (Stonewall x2) with an external participant.
+- If you don’t find a collaborator, you can do a solo Stonewall that mimics the Stonewall x2 pattern.
+
+> Both transactions share the same structure on‑chain. The difference (collaborative vs non‑collaborative) is invisible to observers, which increases doubt — and privacy.
+{: .prompt-tip }
+
+### Why use a Stonewall x2 transaction?
+
+Stonewall x2 adds significant entropy to the transaction and confuses chain‑analysis heuristics. From the outside, it can be misinterpreted as a small two‑party coinjoin. In reality, it’s a payment with a collaborator who remains net‑neutral.
+
+Returning to Alice, Bob, and the Baker, the blockchain view might look like:
+
+
+
+A typical heuristic‑driven conclusion could be:
+
+“**Alice and Bob did a small coinjoin, one input each, two outputs each.**”
+
+
+
+But the actual situation is different: one output is the baker’s payment, Alice has one change output, and Bob has two outputs returning his contribution.
+
+
+
+Even if the observer identifies the Stonewall x2 pattern, they cannot know:
+- Which of the two equal‑amount outputs is the payment
+- Whether Alice or Bob made the payment
+- Whether the two inputs came from two different people or one person combining UTXOs
+
+Because Stonewall (solo) and Stonewall x2 (collaborative) share the same pattern, distinguishing them without extra context is impossible, adding more doubt to the spend.
+
+
+
+> The ambiguity about who paid and who contributed which inputs/outputs is the privacy benefit.
+{: .prompt-info }
+
+### Collaboration prerequisites (PayNyms & Soroban)
+
+Like other collaborative Ashigaru transactions (Cahoots), Stonewall x2 requires exchanging partially signed transactions (PSBTs) between sender and collaborator. This can be done:
+- Manually, when you’re physically together (QR exchange)
+- Automatically, via the Soroban communication protocol
+
+For Soroban (online) collaboration:
+- Establish a PayNym connection first: your PayNym must “follow” your collaborator’s PayNym, and vice versa.
+- Soroban uses BIP47 channels between PayNyms to exchange PSBTs securely.
+
+> Verify you’re following each other before initiating; keep both devices online during the exchange.
+{: .prompt-tip }
+
+### How to do a Stonewall x2 in Ashigaru
+
+- Open “Collaborate” (top‑left PayNym), then coordinate roles:
+ - “Initiate” if you are the payer
+ - “Participate” if you are the collaborator
+
+
+
+
+- If you’re the collaborator (Soroban):
+ - Tap “Participate”
+ - Choose the account
+ - Tap “LISTEN FOR CAHOOTS REQUESTS”
+
+
+
+- For in‑person collaboration:
+ - On wallet home, tap the QR icon
+ - Scan the payer’s QR
+
+
+
+- If you’re the payer:
+ - “Collaborate” → “Initiate”
+ - Choose “STONEWALL X2”
+ - Pick collaboration mode: “Online” (Soroban) or “In Person / Manual”
+
+
+
+
+
+#### Online Cahoots (Soroban)
+
+- Select a collaborator from the PayNyms you follow
+- Tap “Set up transaction,” choose account
+- Enter recipient address, amount, fee rate
+- Tap “Review transaction setup,” then “BEGIN TRANSACTION”
+- Keep apps open; sign and broadcast when complete
+
+
+
+
+
+
+
+> Keep the app open and online during the Soroban flow; interruptions will pause the PSBT exchange.
+{: .prompt-info }
+
+#### In‑person exchange (QR)
+
+- Select “STONEWALL X2” → “In Person / Manual”
+- “Set up transaction” → choose account
+- Enter recipient address, amount, fee rate
+- “Review transaction setup” → “BEGIN TRANSACTION”
+- Alternate scans until all five steps complete
+- Verify and broadcast
+
+
+
+
+
+
+
+
+[The transaction has been broadcast](https://mempool.space/testnet4/tx/9082f3d989728aacd290535a1ac374ab8c04a241a1d798b378db626dabea7a24). Its structure looks like this:
+
+
+
+Credit: [mempool.space](https://mempool.space/)
+
+Observations:
+- Two inputs are mine: 91,869 sats and 64,823 sats
+- Two inputs are from the collaborator’s wallet
+- Outputs:
+ - 100,000 sats goes to the real recipient
+ - 100,000 sats and 159,578 sats return to the collaborator (net‑neutral, minus mining fees)
+ - 56,270 sats is my change
+
+I can describe this structure since I built the transaction; but for an external observer, it’s generally impossible to determine which UTXOs belong to which participant — either on inputs or outputs.
+
+> Stonewall x2 blurs input ownership and destination heuristics. Observers cannot reliably ascribe roles, adding doubt and protecting privacy.
+{: .prompt-tip }
+
+## Payjoin
+
+> Force blockchain spies to rethink everything they think they know.
+
+### Understanding Payjoin transactions on Bitcoin
+
+Payjoin is a specific structure of Bitcoin transaction that enhances user privacy during a payment by collaborating with the payment recipient.
+
+In 2015, [LaurentMT](https://twitter.com/LaurentMT) first described this method as “steganographic transactions” in a document available [here](https://gist.githubusercontent.com/LaurentMT/e758767ca4038ac40aaf/raw/c8125f6a3c3d0e90246dc96d3b603690ab6f1dcc/gistfile1.txt). Samourai Wallet adopted and implemented it as “Stowaway” in 2018. Payjoin concepts are also discussed in [BIP79](https://github.com/bitcoin/bips/blob/master/bip-0079.mediawiki) and [BIP78](https://github.com/bitcoin/bips/blob/master/bip-0078.mediawiki). Common terms you may see:
+
+- Payjoin
+- Stowaway
+- P2EP (Pay‑to‑End‑Point)
+- Steganographic transaction
+
+What makes Payjoin unique is that it produces a transaction that looks ordinary at first glance but is actually a mini coinjoin between two parties. To achieve this, the recipient participates in the inputs alongside the sender. The recipient also includes a self‑payment in the transaction, allowing them to be paid.
+
+Example: if you buy a baguette for 4,000 sats using a 10,000‑sat UTXO and opt for a Payjoin, the baker adds a 15,000‑sat UTXO that belongs to them as an input. They receive that in full as an output, plus your 4,000‑sat payment:
+
+
+
+In this example, the baker introduces 15,000 sats as input and receives 19,000 sats as output — a difference of exactly 4,000 sats, the price of the baguette. You input 10,000 sats and end with 6,000 sats in change — a −4,000‑sat balance, i.e., the payment amount.
+
+> For clarity, mining fees are omitted here. In practice, they are included and paid by the parties.
+{: .prompt-info }
+
+### What is the purpose of a Payjoin transaction?
+
+Payjoin achieves two privacy goals:
+
+A Payjoin transaction serves two objectives that allow users to enhance the privacy of their payment. First of all, Payjoin aims to mislead an external observer by creating a decoy in chain analysis. This is made possible through the Common Input Ownership Heuristic (CIOH). Usually, when a transaction on the blockchain has multiple inputs, it is assumed that all these inputs likely belong to the same entity or user. Thus, when an analyst examines a Payjoin transaction, they are led to believe that all the inputs come from the same person. However, this perception is incorrect because the payment recipient also contributes inputs alongside the actual payer. Therefore, chain analysis is diverted towards an interpretation that turns out to be false.
+
+Furthermore, Payjoin also allows for deceiving an external observer about the actual amount of the payment that has been made. By examining the transaction structure, the analyst might believe that the payment is equivalent to the amount of one of the outputs. However, in reality, the payment amount does not correspond to any of the outputs. It is actually the difference between the recipient's output UTXO and the recipient's input UTXO. In this sense, the Payjoin transaction falls into the domain of steganography. It allows for hiding the actual amount of a transaction within a fake transaction that acts as a decoy.
+
+Definition — Steganography:
+> Steganography is a technique of concealing information within other data or objects in such a way that the presence of the hidden information is not perceptible. For example, a secret message can be hidden inside a dot in a text that has nothing to do with it, making it undetectable to the naked eye (this is the technique of micropoint). Unlike encryption, which makes information incomprehensible without the decryption key, steganography does not modify the information. It remains displayed in plain sight. Its objective is rather to hide the existence of the secret message, whereas encryption clearly reveals the presence of hidden information, although inaccessible without the key.
+{: .prompt-tip }
+
+Returning to our baguette example:
+
+
+
+A typical heuristic might conclude: “Alice merged 2 UTXOs to pay 19,000 sats to Bob.”
+
+
+
+That’s wrong. The two input UTXOs do not belong to one person, and the actual payment value is 4,000 sats — the difference between Bob’s output and Bob’s input. The observer’s analysis is led to an erroneous conclusion, protecting participants’ privacy.
+
+
+
+If you want to analyze a real Payjoin, here’s one performed on testnet:
+[8dba6657ab9bb44824b3317c8cc3f333c2f465d3668c678691a091cdd6e5984c](https://mempool.space/fr/testnet/tx/8dba6657ab9bb44824b3317c8cc3f333c2f465d3668c678691a091cdd6e5984c)
+
+External resources:
+- [LaurentMT steganography gist](https://gist.githubusercontent.com/LaurentMT/e758767ca4038ac40aaf/raw/c8125f6a3c3d0e90246dc96d3b603690ab6f1dcc/gistfile1.txt)
+- [BIP78: Payjoin](https://github.com/bitcoin/bips/blob/master/bip-0078.mediawiki)
+- [payjoin.org](https://payjoin.org/)
+- BTC 204 — Privacy on Bitcoin: Part 5
+ [https://planb.academy/courses/65c138b0-4161-4958-bbe3-c12916bc959c](https://planb.academy/courses/65c138b0-4161-4958-bbe3-c12916bc959c)
+
+## Stowaway (Payjoin)
+
+Payjoin is implemented in Ashigaru as “Stowaway.” Below is how Stowaway works and how to use it step by step.
+
+### How does Stowaway work?
+
+Ashigaru includes a Payjoin tool called Stowaway, available in the Ashigaru Android app. To complete a Payjoin, the recipient (who also acts as the collaborator) must use software compatible with Stowaway — currently, Ashigaru only.
+
+Stowaway belongs to Samourai’s “Cahoots” category — collaborative transactions that exchange information off‑chain. Ashigaru currently offers two Cahoots tools: Stowaway (Payjoins) and Stonewall X2.
+
+Cahoots require exchanging PSBTs (partially signed transactions) between users. Manually, this involves five successive QR scans between participants (suitable when you’re together in person). At a distance, manual exchange is cumbersome; Soroban (an encrypted Tor‑based protocol) automates the PSBT exchange in the background.
+
+Soroban requires an authenticated channel between participants. It uses users’ PayNyms for identification and encrypted communications.
+
+A PayNym is a unique wallet identifier that activates features like encrypted exchanges. It appears as an ID with an illustration (example on testnet):
+
+
+
+Summary:
+- Payjoin = specific collaborative transaction structure
+- Stowaway = Ashigaru’s Payjoin implementation
+- Cahoots = collaborative transaction types (Stowaway, Stonewall X2)
+- Soroban = Tor‑based encrypted communications for Cahoots
+- PayNym = unique wallet identifier used to establish Soroban communications for Cahoots
+
+> Soroban automates PSBT exchange over Tor; PayNyms provide the authenticated channel used by Soroban.
+{: .prompt-info }
+
+### How to establish a connection between PayNyms
+
+First, install Ashigaru and create a wallet (covered earlier in Sections 2–3).
+
+To do a remote Cahoots (Payjoin/Stowaway), you must “follow” the user you’ll collaborate with, using their PayNym — in Stowaway, this means following the person you intend to pay.
+
+> Before initiating Stowaway, ensure both PayNyms follow each other — it’s required to establish the encrypted Soroban channel.
+{: .prompt-tip }
+
+### How to do a Payjoin in Ashigaru
+
+- Open “Collaborate” from your PayNym image (top‑left). The participant must do the same — unless you’re exchanging QR codes in person.
+
+
+
+- Choose:
+ - “Initiate” if you are the payer (sender)
+ - “Participate” if you are the recipient (collaborator)
+
+
+
+- If you’re the recipient/collaborator (Soroban):
+ - Tap “Participate”
+ - Choose the account
+ - Tap “LISTEN FOR CAHOOTS REQUESTS”
+
+
+
+- For in‑person collaboration:
+ - Go to wallet home
+ - Tap the QR icon
+ - Scan the payer’s QR code
+
+
+
+- If you’re the payer (initiator):
+ - “Collaborate” → “Initiate”
+ - Choose “Stowaway” (Payjoin)
+ - Pick collaboration mode: “Online” (Soroban) or “In Person / Manual”
+
+
+
+
+
+#### Online Cahoots (Soroban)
+
+- Select the recipient from the PayNyms you follow
+- Tap “Set up transaction,” then choose the spending account
+- Enter amount and fee rate (no address needed; recipient supplies it during exchange)
+- Tap “Review transaction setup,” then “BEGIN TRANSACTION”
+- Keep both devices online; sign and broadcast when complete
+
+
+
+
+
+
+
+> Keep both devices online and inside the app during Soroban — interruptions pause the PSBT exchange.
+{: .prompt-info }
+
+#### In‑person exchanges (QR)
+
+- Select “Stowaway” → “In Person / Manual”
+- “Set up transaction” → choose spending account
+- Enter amount and fee rate (recipient provides address during exchange)
+- “Review transaction setup” → “BEGIN TRANSACTION”
+- Alternate scans until all five steps complete
+- Verify and broadcast
+
+
+
+
+
+
+
+
+[Broadcasted transaction (testnet)](https://mempool.space/testnet4/tx/82efd3700bba87b0f172e9cc045e441b38622c95a60df9f39a21f63eb4590a96)
+
+Its structure looks like this:
+
+
+
+Credit: [mempool.space](https://mempool.space)
+
+Analysis:
+- Inputs: my UTXO (164,211 sats) + recipient’s UTXO (190,002 sats)
+- Outputs: my change (63,995 sats) + recipient’s output (290,002 sats)
+
+Comparing inputs and outputs:
+- Recipient gains 100,000 sats (payment amount)
+- I lose 100,000 sats plus mining fees
+
+I can describe this structure because I built the transaction; but for external observers, it’s generally impossible to determine which UTXOs belong to which participant — inputs or outputs.
+
+> Stowaway blurs input ownership and destination; observers cannot reliably assign roles, which strengthens privacy.
+{: .prompt-tip }
+
+## Ricochet
+
+> A premium tool that adds extra hops of history to your transaction. Stump blacklists and help guard against unjust third‑party account closures.
+
+### What is Ricochet?
+
+Ricochet is a technique where you create several self‑payments (to your own fresh addresses) to simulate a change of ownership of your bitcoin before the final spend. Unlike Ashigaru’s other spending tools (inherited from Samourai Wallet), Ricochet does not aim for prospective anonymity; instead, it provides a form of retrospective anonymity. In practice, Ricochet blurs properties that could compromise the fungibility of a Bitcoin UTXO.
+
+For example, if you perform a coinjoin, your postmix coin will be identifiable as having passed through a coinjoin. Chain‑analysis tools can detect coinjoin patterns and tag coins that exit them. Coinjoins break historical links, but their presence is still detectable — like encrypted text: you can’t read it, but it’s easy to see that encryption was applied.
+
+That “coinjoin‑tagged coin” label can affect fungibility. Regulated entities (e.g., exchanges) may refuse coinjoin‑sourced UTXOs, ask for explanations, or even freeze accounts/funds. In some cases, an exchange may report activity to state authorities.
+
+Ricochet addresses this by inserting four successive self‑transactions, each to a new address you control, then sending to the final destination (e.g., an exchange). The goal is to create distance between the original coinjoin and the final spend. This makes chain‑analysis tools more likely to consider a change of ownership has occurred post‑coinjoin, discouraging them from taking action against the sender.
+
+
+
+You might ask why chain‑analysis tools don’t simply look beyond four hops. In practice, these companies face an optimization dilemma: they must choose a threshold for “number of hops” after which they assume a change of ownership likely occurred and ignore older links. Raising that threshold increases false positives exponentially. As a result, raising the threshold is challenging; four hops is often enough to defeat their heuristics in many cases.
+
+> Ideally, do not send coinjoin‑sourced coins to regulated entities. If you must (e.g., urgent fiat liquidation), Ricochet can help reduce misclassification risks.
+{: .prompt-warning }
+
+> Ricochet is a pragmatic, retrospective privacy tool. It does not guarantee acceptance by any third party, but it commonly reduces friction with blacklist heuristics.
+{: .prompt-info }
+
+### How Ricochet works in Ashigaru
+
+Ricochet is simply sending bitcoin to yourself; you can simulate it manually without any specialized tool. Ashigaru offers streamlined, automated Ricochet that produces clean results.
+
+- Service cost: Ricochet on Ashigaru charges 100,000 sats for service fees, plus mining fees.
+- Practical use: Best suited for larger transfers where the fee overhead is proportionally reasonable.
+
+> Because Ricochet costs 100,000 sats plus mining fees, it’s recommended for significant amounts rather than small spends.
+{: .prompt-warning }
+
+Ashigaru offers two Ricochet variants:
+- Staggered delivery (reinforced Ricochet): distributes fees across five transactions, ensures distinct broadcast/confirmation times, maximizes ownership‑change appearance; slower.
+- Classic Ricochet: faster execution, less privacy; use for urgent sends only.
+
+> Choose “staggered delivery” for best privacy; choose “Classic” only if you need speed.
+{: .prompt-tip }
+
+### How to do a Ricochet in Ashigaru
+
+- Start a send using the standard flow (Section 6): tap “+” → “Send,” select account.
+
+
+
+- Fill transaction details: amount, final destination address, check “Ricochet.”
+
+
+
+- Choose Ricochet mode: “Classic” or “staggered delivery,” then confirm.
+
+
+
+- Review and fee management: adjust miner fees; slide the green arrow to sign and broadcast the Ricochet sequence.
+
+
+
+- Wait for automatic hops to complete, then confirm final delivery.
+
+
+
+
+> Ricochet will automatically manage the sequence of hops. If you chose staggered delivery, allow time for each hop to confirm in a separate block.
+{: .prompt-info }
+
+You now know how to use the full suite of tools avaliable in Ashigaru Mobile.
\ No newline at end of file
diff --git a/ashigaru-terminal-whirlpool.md b/ashigaru-terminal-whirlpool.md
new file mode 100644
index 0000000..4cc9157
--- /dev/null
+++ b/ashigaru-terminal-whirlpool.md
@@ -0,0 +1,469 @@
+---
+layout: page
+title: Ashigaru Whirlpool
+subtitle: How to Peform CoinJoins with Ashigaru Whirlpool
+---
+
+
+ Install |
+ Verify |
+ Launch |
+ Get Familiar |
+ Connect Node |
+ Create Wallet |
+ Use Wallet |
+ Whirlpool: How It Works |
+ Required Software |
+ Receive |
+ Tx0 |
+ Run Coinjoin |
+ Finish Coinjoin |
+ Doxxic Change |
+ Postmix
+
+ Original Author
+
+
+
+
+
+
+
+Ashigaru Terminal is Ashigaru’s adaptation of Sparrow Server that implements the Whirlpool coinjoin protocol. It continues the work started by Samourai Wallet, especially around Whirlpool GUI, keeping the core principles of self‑custody and privacy preservation.
+
+This software is a fork of Sparrow Server, modified and optimized for full integration with the Whirlpool ecosystem — the ZeroLink coinjoin protocol originally developed by the Samourai team.
+
+Ashigaru Terminal runs in a minimalist TUI interface and can be deployed on a personal computer or a dedicated server. It lets you interact directly with Whirlpool to initiate Tx0 transactions, manage the Deposit, Premix, Postmix, and Badbank accounts, and perform automatic remixing to strengthen the privacy of your coins.
+
+In short, Ashigaru Terminal is particularly useful if you want to perform coinjoins via Whirlpool.
+
+In this first tutorial, we’ll handle installation and the basics of Ashigaru Terminal. A second, more advanced tutorial will then cover performing coinjoins in practice.
+
+> Proper coinjoins improve privacy by breaking deterministic links between inputs and outputs.
+{: .prompt-info }
+
+## 1. Install Ashigaru Terminal
+
+To install Ashigaru Terminal, you’ll need Tor Browser because binaries are distributed only over the Tor network. If you haven’t already, [install Tor Browser](https://www.torproject.org/download/) on your machine.
+
+### 1.1. Download Ashigaru Terminal
+
+From Tor Browser, go to the releases page of the Git repository and download the latest version for your operating system:
+
+Onion link - http://ashicodepbnpvslzsl2bz7l2pwrjvajgumgac423pp3y2deprbnzz7id.onion/Ashigaru/Ashigaru-Terminal/releases/
+
+
+
+Download the two files that match your operating system:
+- The binary (for example: `ashigaru_terminal_v1.0.0_amd64.deb ` for Debian/Ubuntu, `.dmg ` for macOS, or `.zip ` for Windows)
+- The signed hashes file: `ashigaru_terminal_v1.0.0_signed_hashes.txt `
+
+> Always download both the binary and the signed hashes file — you’ll need the latter to verify authenticity and integrity before running anything.
+{: .prompt-warning }
+
+### 1.2. Verify Ashigaru Terminal
+
+Before running the software, verify its authenticity and integrity. This step helps you avoid installing a tampered version that could compromise your bitcoin or infect your machine.
+
+Open a new tab and go to the [Keybase verification tool](https://keybase.io/verify). Paste the content of the `.txt ` signed hashes file into the field, then click “Verify.”
+
+
+
+To diversify verification sources, you can also compare the message with what’s on the clearnet site [ashigaru.rs](https://ashigaru.rs/download/) under the `/download ` section.
+
+
+
+If the signature is valid, Keybase will confirm the file was signed by the Ashigaru developers.
+
+
+
+You can also click the “ashigarudev” profile shown by Keybase and ensure the key fingerprint matches exactly: A138 06B1 FA2A 676B.
+
+
+
+> If the Keybase verification fails, do not install the software. Start the process over or ask the community for help before proceeding.
+{: .prompt-danger }
+
+Keybase gives you the authenticated hash for the app. Now verify the hash of the `.deb `, `.zip `, or `.dmg ` you downloaded matches the Keybase-verified value. Use [HASH FILE ONLINE](https://hash-file.online/).
+
+- Click “BROWSE...” and select the `.deb `, `.zip `, or `.dmg ` you downloaded
+- Choose SHA‑256 as the hashing function
+- Click “CALCULATE HASH” to generate your file’s hash
+
+
+
+The site will display the software hash. Compare it to the one verified on Keybase. If both match perfectly, authenticity and integrity checks have succeeded. You can now install/run the software.
+
+
+
+> Never proceed if the signature or hash comparison fails — investigate the mismatch first.
+{: .prompt-danger }
+
+### 1.3. Launch Ashigaru Terminal
+
+- Debian / Ubuntu
+
+To install:
+
+ ` ` `bash
+cd ~/Downloads
+sudo apt install ./ashigaru_terminal_v1.0.0_amd64.deb
+ ` ` `
+> Adjust the filename to match the version you downloaded.
+{: .prompt-info }
+
+Then verify the installation:
+
+ ` ` `bash
+/opt/ashigaru-terminal/bin/Ashigaru-terminal --version
+ ` ` `
+> Prints the installed version to confirm the binary is available.
+{: .prompt-tip }
+
+Launch the software:
+
+ ` ` `bash
+/opt/ashigaru-terminal/bin/Ashigaru-terminal
+ ` ` `
+> Starts the TUI app in your terminal.
+{: .prompt-info }
+
+- Windows
+
+Right‑click the `.zip ` file you downloaded and verified, then select “Extract All...” to unpack it.
+
+Once extraction is complete, double‑click `Ashigaru-terminal.exe ` to launch the app.
+
+
+
+> On macOS, open the downloaded `.dmg ` and follow the standard app installation process. Gatekeeper may require you to allow running apps from this developer.
+{: .prompt-tip }
+
+## 2. Get familiar with Ashigaru Terminal
+
+Ashigaru Terminal uses a TUI (Text‑based User Interface), meaning a minimalist interface that runs directly in the terminal. You interact using menus and keyboard shortcuts without a traditional GUI.
+
+
+
+Navigation is straightforward: use your keyboard’s arrow keys to move through menus, and press `Enter ` to confirm or perform actions.
+
+## 3. Connect your node to Ashigaru Terminal
+
+By default, Ashigaru Terminal connects to a public Electrum server. This has obvious privacy and sovereignty drawbacks. Configure it to connect directly to your own Electrum server.
+
+Open `Preferences > Server `.
+
+
+
+Click `< Edit > `.
+
+
+
+Select `Private Electrum Server `, then click `< Continue > `.
+
+
+
+Enter your server’s URL and port. You can enter a Tor `.onion ` address. Click `< Test > ` to check the connection.
+
+
+
+If the connection works, you’ll see `Success ` and your server’s details.
+
+
+
+> For best privacy, use your own Electrum server (onion if remote). Public servers can see and correlate wallet queries.
+{: .prompt-warning }
+
+To learn more about Dojo and how to install it, I have the following dedicated guide:
+
+[Vanilla Samourai Dojo Guide](https://bitcoiner.guide/vanilla-dojo/)
+
+Note: For this tutorial, the author disconnects from their because they’re on testnet. Operation is the same on mainnet.
+
+## 4. Create a wallet in Ashigaru Terminal
+
+With the software configured, add a Bitcoin wallet.
+
+You have two choices:
+- Create a brand‑new wallet to use exclusively with Ashigaru Terminal. You’ll need this app running whenever you want to interact with the wallet.
+- Import your existing Ashigaru (mobile) wallet into Ashigaru Terminal. This slightly reduces security (one wallet across two environments), but it lets Ashigaru Terminal run continuously to mix coins while you spend from the mobile app.
+
+In this tutorial, we’ll use the second option. If you prefer creating a new wallet, the procedure is identical — the only difference is you’ll back up the new mnemonic and BIP39 passphrase during creation.
+
+Note: Ashigaru Terminal does not allow you to spend your bitcoins directly. You can either synchronize the same wallet on Ashigaru Terminal and the Ashigaru app (which I will do in this tutorial), or on Sparrow Wallet.
+
+If you don’t yet have a wallet in the Ashigaru app, follow [this guide](https://bitcoiner.guide/ashigaru-mobile).
+
+Go to `Wallets `.
+
+
+
+Select `Create / restore wallet... `. Use `Open Wallet... ` later to reopen a wallet already saved in Ashigaru Terminal.
+
+
+
+Give your wallet a name.
+
+
+
+Choose `Hot Wallet ` as the wallet type.
+
+Note: `Watch‑only ` lets you save a hardware wallet xpub for later use with `Mix to `. A watch‑only wallet cannot participate in coinjoins. We’ll cover “Mix to” in a future tutorial.
+
+
+
+Now the flow differs based on your choice:
+- To create a new wallet from scratch, click `< Generate New Wallet > `, set a BIP39 passphrase, and carefully back up the mnemonic and passphrase on physical media:
+
+- To use the same wallet as your Ashigaru Mobile app, enter your 12‑word mnemonic and your BIP39 passphrase exactly: lowercase words, in order, separated by a single space, with no extra characters.
+
+Click `< Next > ` when done.
+
+Note: If `< Next > ` is disabled, your mnemonic is invalid. Double‑check for typos or incorrect words.
+
+
+
+You’ll then set a password. This unlocks your wallet in Ashigaru Terminal and protects it from unauthorized physical access. It is not part of key derivation. In other words, even without this password, anyone with your mnemonic and passphrase can restore your wallet and access your funds.
+
+Choose a long, random password. Store a copy safely — ideally on physical media or in a secure password manager.
+
+Click `< OK > ` when finished.
+
+
+
+> Mnemonic + passphrase = full access. Treat the Terminal password as a local lock; it does not replace seed security.
+{: .prompt-info }
+
+## 5. Use the wallet
+
+Choose which account to view. Since we haven’t started mixing yet, open the `Deposit ` account.
+
+
+
+Operation is similar to Sparrow (Ashigaru Terminal is a fork of Sparrow Server), so you’ll see familiar menus:
+
+
+
+- `Transactions `: view transaction history for this account. In this example, some appear already because they were made with the Ashigaru Mobile app using the same wallet.
+
+
+
+- `Receive `: generate a fresh receiving address to fund the deposit account.
+
+
+
+- `Addresses `: list all addresses in this account (internal and external chains).
+
+
+
+- `UTXOs `: list all available UTXOs.
+
+
+
+- `Settings `: view the wallet descriptor, check the seed, adjust Gap Limit, or change the wallet birthday/start date.
+
+
+
+You now know how to install and get started with Ashigaru Terminal. Next we’ll cover performing coinjoins and managing Postmix funds via the Ashigaru mobile app.
+
+“a bitcoin wallet for the streets”
+
+Here, you’ll learn what a coinjoin is in practice and how to perform one using the Ashigaru ecosystem and Whirlpool — a coinjoin protocol inherited from Samourai Wallet — via Ashigaru Terminal.
+
+## How Whirlpool coinjoins work
+
+This guide does not explain coinjoin theory, why it’s useful, or the formal design of Whirlpool, as these topics will be covered in detail in a future post.
+
+Here are a few quick points that will help in practice.
+
+Wallets compatible with Whirlpool use 4 distinct accounts to support the coinjoin process:
+- Deposit account, index `0' `
+- Bad Bank (aka doxxic change), index `2 147 483 644' `
+- Premix, index `2 147 483 645' `
+- Postmix, index `2 147 483 646' `
+
+As of November 2025 on Ashigaru, two pool denominations are available (this list will likely evolve in the coming months — check values at the time you read this):
+- `0.25 BTC `, with an entry fee of `0.0125 BTC `
+- `0.025 BTC `, with an entry fee of `0.00125 BTC `
+
+Each mixing cycle usually includes 5 UTXOs as inputs and outputs.
+
+
+
+> Pool sizes and entry fees can change. Be sure to check current values before starting.
+{: .prompt-info }
+
+## Required software
+
+To perform coinjoins with Whirlpool, you need three separate tools:
+
+- Ashigaru Terminal — manage your coinjoins directly from your computer
+
+- [Ashigaru Mobile](https://bitcoiner.guide/ashigaru-mobile/) — the mobile app you’ll use to spend your postmix bitcoin anywhere
+
+- Dojo — a Bitcoin node implementation to ensure a sovereign connection without relying on third‑party servers, it can be run on:
+
+ - Start9 by downloading dojo from the community marketplace (I would link to this directly but start9's marketplace website is poor to say the least)
+
+ - Umbrel by installing the "[Samourai Server](https://apps.umbrel.com/app/samourai-server)" app
+
+ - Vanilla dojo on Ubuntu or Debian by following [this guide](https://bitcoiner.guide/vanilla-dojo/).
+
+ - You may also use a public dojo run by a community member but know that this is not ideal for privacy and you should strive to run your own dojo. You may want to use a public dojo if you are just testing with testnet coins for example. Learn more here: [dojobay.pw](https://dojobay.pw/)
+
+Install each tool following its dedicated tutorial. Then you can start doing your first coinjoins.
+
+## Receive bitcoin
+
+After creating your wallet, you start with a single account — index `0' ` — called `Deposit `. Send bitcoin you intend to coinjoin to this Deposit account. You can receive via the Ashigaru mobile app (see Section 5 of its tutorial) or via Ashigaru Terminal (also detailed in Section 5 of its tutorial).
+
+Once your Deposit account holds at least the amount required to join the smallest pool (plus service fees and a minimum to cover mining fees), you’re ready to initiate your first coinjoins.
+
+
+
+## Create the Tx0
+
+When funds have arrived in your Deposit account and the transaction is confirmed, you can start the coinjoin process. In Ashigaru Terminal, open the `Wallets ` menu, then choose your wallet. If it’s locked, you’ll be asked for your password and passphrase.
+
+
+
+Select the `Deposit ` account.
+
+
+
+Go to the `UTXOs ` menu.
+
+
+
+You’ll see all UTXOs in your Deposit account. Select the UTXOs you want to enter into coinjoin cycles.
+
+For better privacy — and to avoid the Common Input Ownership Heuristic (CIOH) — it’s recommended to use a UTXOs from the same sources in each Tx0, you do not want accidentally associate your KYC and Non-KYC coins for example.
+
+Press `ENTER ` to select a UTXO: an asterisk `(*) ` will appear next to it.
+
+
+
+Click `Mix Selected `.
+
+
+
+If you have a UTXO large enough to enter one of the available pools, choose the pool using the arrow keys. On this page, you’ll see your Tx0 details:
+- Number of UTXOs entering the pool
+- Fees applied (service fees and mining fees)
+- Amount of doxxic change
+
+Review the information carefully, then click `Broadcast ` to send the Tx0.
+
+
+
+Ashigaru will then show the TXID of your Tx0, confirming the transaction was broadcast to the network.
+
+
+
+> Use UTXOs from similar sources when possible — combining multiple UTXOs can expose your ownership of said UTXOs via the CIOH.
+{: .prompt-warning }
+
+## Run the coinjoins
+
+After broadcasting the Tx0, return to your Deposit account’s home page, click `Accounts `, and select the `Premix ` account.
+
+
+
+In the `UTXOs ` menu, you’ll see the equalized pieces ready to enter coinjoin cycles. As soon as the Tx0 confirms, Ashigaru Terminal can automatically start the first mixing cycle.
+
+
+
+Once the Tx0 is confirmed, the first coinjoin transaction will be created and broadcast automatically by Ashigaru Terminal. In `Accounts > Postmix > UTXOs `, you can view your equalized UTXOs waiting for their first cycle’s confirmation.
+
+
+
+You can now leave Ashigaru Terminal running in the background. It will continue mixing and remixing your coins automatically.
+
+> Remixes continue automatically and cost nothing extra in Whirlpool (no additional service or mining fees for remixes).
+{: .prompt-tip }
+
+## Finishing the coinjoins
+
+You can let your coins keep remixing automatically. In Whirlpool, remixes accrue no extra fees — neither service nor mining — so more cycles can only improve your privacy.
+
+To better understand this mechanism and how many cycles are worthwhile, I will post a detailed article in the future, stay tuned!
+
+To see how many remixes each coin has completed, open the `UTXOs ` menu of the `Postmix ` account.
+
+
+
+To spend your mixed coins, use the Ashigaru mobile app, which shares the same wallet as Ashigaru Terminal. The default view is the `Deposit ` account. To access the `Postmix ` account (where mixed UTXOs live), tap the Whirlpool icon at the top right.
+
+
+
+In this account, you’ll see all your coins in the mixing process. To spend, tap the `+ ` symbol at the bottom right, then select `Send `.
+
+
+
+Enter your transaction details: the recipient address, the amount, and — if you wish — select a specific transaction type for even stronger privacy.
+
+
+
+Carefully check the transaction information, then slide the arrow at the bottom of the screen to confirm sending.
+
+
+
+Your transaction has been signed and broadcast to the Bitcoin network.
+
+
+
+## Spending the doxxic change
+
+Remember: Whirlpool’s model equalizes coins in the Tx0 before entering pools, which makes tracking harder. This is the most effective coinjoin model, but it has a drawback: a change output that does not go through the coinjoin process, we call this doxxic change.
+
+This change output is created for each Tx0. It is isolated in a specific account named `Doxxic Change ` or `Bad Bank ` (depending on the software) to avoid using it with your other UTXOs. This point is critical: these UTXOs have not been mixed — their traceability links remain intact and can compromise your privacy by tying you to your coinjoin activity. Handle them carefully and never use them with other UTXOs, mixed or not. Combining a toxic UTXO with a mixed UTXO destroys all privacy gains from coinjoins. — Although using official wallets should never allow this to happen, easy tiger.
+
+Currently, Ashigaru does not provide direct access to the `Doxxic Change ` account (at least, it wasn’t found at the time of writing). This feature will likely be added in a future update. In the meantime, the only way to retrieve these funds is to import your seed into Sparrow Wallet. Sparrow usually auto‑detects a Whirlpool wallet and gives access to all four accounts, including `Doxxic Change `. You can then spend those UTXOs like regular bitcoin from Sparrow.
+
+Here are several possible strategies to handle coinjoin change UTXOs without compromising your privacy:
+
+- Mix them in smaller pools: If a toxic UTXO is large enough for a smaller pool, this is often the best option. Do not merge multiple toxic UTXOs to reach the threshold — that would link your entries.
+
+- Mark them as unspendable: Another cautious approach is to keep them in their separate account and not touch them to avoid accidental spending. If BTC appreciates, new pools may become available for their size.
+
+- Donate them: You can donate toxic UTXOs to Bitcoin developers, open‑source projects, or nonprofits that accept BTC. This disposes of them usefully while supporting the ecosystem.
+
+- Buy gift cards or prepaid Visa cards: Platforms like [Bitrefill](https://www.bitrefill.com/) allow exchanging bitcoin for gift cards or reloadable Visa cards. This can be a simple, discreet way to spend toxic UTXOs. But be aware that these UTXOs are still linked to their previous history so be careful which ones you spend
+
+- Swap them for Monero: Samourai Wallet previously offered atomic BTC/XMR swaps (now discontinued). This service exists in [Eigen Wallet](https://eigenwallet.org/), you can isolate these UTXOs, convert to XMR, then back to BTC if desired. This method can be costly and depends on available liquidity. Also you must consider do you want to potentially risk a UTXO that may be associated with you being given to a third party who can do whatever they want with it?
+
+- Open a lightning channel: Transferring toxic UTXOs to LN to benefit from lower transaction fees can be useful. However, this may leak information depending on your LN usage, so proceed carefully.
+
+> Carefully consider what you want to do with your doxxic change, always proceed carefully.
+{: .prompt-danger }
+
+## How to assess coinjoin quality
+
+Effective coinjoins exhibit high homogeneity between input and output amounts. This uniformity increases the number of plausible interpretations for an external observer and therefore uncertainty about the transaction. We measure this uncertainty using entropy applied to the transaction. Whirlpool’s model is recognized as one of the strongest in this regard, thanks to excellent homogeneity between participants.
+
+The performance across multiple coinjoin cycles is measured by the size of the sets in which a coin is hidden — called anonsets. There are two types:
+- One measures privacy against retrospective analysis (from present to past)
+- The other measures resistance against prospective analysis (from past to present)
+
+For a full explanation of these two indicators a follow-up post will be posted.
+
+## How to manage postmix
+
+After several coinjoin cycles, the best strategy is to keep UTXOs in the `Postmix ` account, letting them remix indefinitely until you actually need to spend them.
+
+Some users prefer moving mixed BTC to a hardware wallet. This is possible, but it requires discipline to avoid compromising privacy gains from coinjoins.
+
+The most common mistake is merging UTXOs. Never combine mixed UTXOs with unmixed UTXOs in the same transaction, or you risk creating links via the CIOH. This means rigorous UTXO management is key — clear and precise labeling is essential. In general, UTXO merging is risky and often leads to privacy loss when done poorly.
+
+Be careful with consolidation of mixed UTXOs with each other, too. Limited consolidation may be acceptable if UTXOs have large anonsets, but it inevitably reduces your privacy. Avoid large or rushed consolidations before sufficient remixes, as they can create deducible links between your coins before and after mixing. When in doubt, do not consolidate postmix UTXOs. Instead, transfer them one by one to your hardware wallet, generating a fresh receiving address each time. Label every transferred UTXO carefully.
+
+It is strongly discouraged to move postmix UTXOs into wallets using minority scripts. For example, if you participated in Whirlpool from a multisig `P2WSH ` wallet, few users share that script type. Sending postmix UTXOs back to the same script greatly reduces your anonymity set. Beyond script type, other wallet fingerprints can harm your privacy. The safest option is to spend from the Ashigaru app.
+
+Finally, as with any Bitcoin usage, never reuse a receiving address. Each payment should go to a fresh, unused address.
+
+The simplest and safest method remains: keep mixed UTXOs resting in `Postmix `, let them remix naturally, and spend only when needed from Ashigaru.
+
+Ashigaru and Sparrow include additional protections against common chain‑analysis pitfalls, helping you preserve transaction privacy.
+
+> Avoid merging mixed and unmixed UTXOs; prefer spending from Postmix directly; don’t reuse addresses; and be cautious with script types and consolidations.
+{: .prompt-warning }
\ No newline at end of file
diff --git a/assets/img/ashigaru-mobile-guide/01.webp b/assets/img/ashigaru-mobile-guide/01.webp
new file mode 100644
index 0000000000000000000000000000000000000000..2ba8d719d4b29652a57ded6d64f7a3708e893d97
GIT binary patch
literal 47322
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