
Specter-FlipperZero v2.8
๐ป Specter โ Flipper Zero์ฉ ์๋ 13.56MHz NFC ๋ฆฌ๋/์คํค๋จธ ๋์ฒญ ํ์ง. ๋ด์ฅ NFC ์นฉ์ ์ฌ์ฉํ๋ ๋๊ฐ์ฒญ EMF ๋ฏธํฐ. ์ถ๊ฐ ํ๋์จ์ด ๋ถํ์.
Specter ๐ป
๋ณด์ด์ง ์๋ ๋ฆฌ๋๋ฅผ ์ฐพ์๋ด์ธ์.
Specter๋ Flipper Zero๋ฅผ ํ์ฑ 13.56 MHz NFC ๋ฆฌ๋๋ฅผ ์ํ ์ฃผ๋จธ๋ ์ ๋(ๅฐ)๊ฐ์ ๋ฒ๊ทธ ์ค์ ๋๊ตฌ๋ก ๋ฐ๊ฟ์ค๋๋ค. ์ ์์ด ์ผ์ง ๋ฆฌ๋๊ฐ ๋์์์ด ๋ฐฉ์ถํ๋ RF ํ๋๋ฅผ ์๋์ ์ผ๋ก ์ฒญ์ทจํฉ๋๋ค โ ๊ฒฐ์ ๋จ๋ง๊ธฐ์ ๋ชฐ๋ ๋ผ์ ๋ฃ์ ์นด๋ ์คํค๋จธ, ๋์ด ํจ๋ ๋ค์ ์จ๊ธด ์๋ฐํ ๋ฆฌ๋, ์ฑ ์ ๋ฐ์ ํ ์ดํ๋ก ๋ถ์ฌ๋ ๋ถ๋ฒ ๋ก๊ฑฐ โ ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ด ์ด๋์ ์๋์ง, ์ด๋ค ์ข ๋ฅ์ธ์ง, ๋ฐฉ์ด ๊นจ๋ํ์ง, ๊ทธ๋ฆฌ๊ณ ๊ฐ์ ๋ชจ๋๋ก ์ผ๋๋ฉด ์๋ฆฌ๋ฅผ ๋น์ด ์ฌ์ด์ ๊ทธ๊ฒ์ด ๋ํ๋ ์๊ฐ์ ์๋ ค์ค๋๋ค. ์ ๋ ์ก์ ํ์ง ์์ต๋๋ค.
๋ฆฌ๋๋ ๋ณด์ด์ง ์์ต๋๋ค. Specter๊ฐ ๊ทธ๊ฒ์ ๋ณด์ด๊ฒ ๋ง๋ญ๋๋ค.
์๊ฐ๋ ๋งค์ฒด
Help Net Security
ย ยทย
Cyber Security News
๐ Flipper์์
์ค์์ ์ฒ์๋ถํฐ ๋๊น์ง: ์กฐ์ฉํ ๋ฐฉ โ ์ ๊ทผ โ ๊ณ ์ โ ๋ฌด์์ธ์ง โ ๋ฐฉ์ ํ์ .
Sweep (์กฐ์ฉํจ) ย ยทย Sweep (๋ฆฌ๋ ๊ณ ์ ๋จ) ย ยทย Fingerprint ย ยทย Survey (์คํ ์ค) ย ยทย Survey (ํ์ )
Watch (์ด์ ์์) ย ยทย Watch (๋ฆฌ๋ ๋ฐ๊ฒฌ!) ย ยทย Logbook ย ยทย Calibrate ย ยทย Settings
โจ ๋ค์ฏ ๊ฐ์ง ๋ชจ๋
Specter๋ ํ๋์ ์ผ์๋ฅผ ๋๋ฌ์ผ ๋ค์ฏ ๊ฐ์ง ๋๊ตฌ์ ๋๋ค. ๊ฐ๊ฐ ๋ค๋ฅธ ์ง๋ฌธ์ ๋ตํ๋ฏ๋ก, ์ค์ ๋ก ์์๋ด๋ ค๋ ๊ฒ์ด ๋ฌด์์ธ์ง์ ๋ฐ๋ผ ์๋ง์ ๋ชจ๋๋ฅผ ์ ํํ๋ฉด ๋ฉ๋๋ค:
| ๋ชจ๋ | ๋ตํ๋ ์ง๋ฌธ | ์ฌ์ฉ ์์ |
|---|---|---|
| ๐ Sweep | ์ด๋์ ์๋๊ฐ? | ๊ธฐ๊ธฐ๊ฐ ์์ฌ๋์ด ๋์๋ค๋๋ฉฐ ์์น๋ฅผ ์ ํํ ์ฐพ๊ณ ์ถ์ ๋ |
| ๐ฌ Fingerprint | ์ด๋ค ์ข ๋ฅ์ธ๊ฐ? | ๋ฐ์ ์์ ์ฐพ์๊ณ ๊ทธ ๋์ ๋ฐฉ์์ ์๊ณ ์ถ์ ๋ |
| ๐บ๏ธ Site Survey | ์ด ๋ฐฉ์ ๊นจ๋ํ๊ฐ? | ๊ณต๊ฐ ์ ์ฒด์ ๋ํ ํ์ ์ ์ ๋์ง ์๊ณ ํ ๋ฒ์ ์ป๊ณ ์ถ์ ๋ |
| ๐ฐ๏ธ Watch Mode | ๋ด๊ฐ ์๋ ์ฌ์ด์ ๋ํ๋ฌ๋๊ฐ? | Flipper๋ฅผ ์ด๋๊ฐ์ ๋๊ณ ๊ฐ์ํ๊ฒ ํ๊ณ ์ถ์ ๋ |
| ๐ Logbook | ๋ฌด์์, ์ธ์ ์ฐพ์๋๊ฐ? | ๊ธฐ๋ก์ ์์ฑํ๊ฑฐ๋ ์ค๋๊ณผ ์ง๋์ฃผ๋ฅผ ๋น๊ตํ ๋ โ ๋ฐ๊ฒฌ ์ ํ๋ณ ํํฐ๋ง |
๐ Sweep โ ์ด๋์ ์๋๊ฐ?
ํ๋ ์ผ. ์ค์๊ฐ EMF ์คํ์ผ ๋ฏธํฐ์ ๋๋ค. Flipper๋ฅผ ํํํ๊ฒ ๋ค๊ณ ํ์ธํ๋ ค๋ ๋์ โ ์นด๋ ๋จ๋ง๊ธฐ, ๋์ด ๋ฆฌ๋, ATM ์ ๊ตฌ ์๋์ชฝ, ํ๋ฐฐ ์์, ์ฑ ์ โ ์๋ก ์ฒ์ฒํ ์์ง์ด์ธ์. ๋ฐ๋์ด ํ๋ ์ธ๊ธฐ๋ฅผ ์ค์๊ฐ์ผ๋ก ๋ฐ๋ผ๊ฐ๋๋ค.
๋ณด์ด๋ ๊ฒ.
- ๋ค์ด์ผ โ ๋ฐ๋ = ์ค์๊ฐ ์ธก์ ๊ฐ, ์์ ์ = ํผํฌ ํ๋ (์ง๊ธ๊น์ง ๋ฟ์ ๊ฐ์ฅ ๊ฐํ ์ง์ ์ด๋ฏ๋ก ์์น๋ฅผ ๋น๊ตํ ์ ์์ต๋๋ค).
FIELD %โ ๊ฐ์ ์ธก์ ๊ฐ์ ์ซ์๋ก ํ์ํ๋ฉฐ, โฒ / โผ ์ถ์ธ ํ์ดํ๊ฐ ์ง๋ 0.5์ด ๋์ ์ํฉ์ด ๋จ๊ฑฐ์์ก๋์ง ์ฐจ๊ฐ์์ก๋์ง ์๋ ค์ค๋๋ค. ์ถ์ ์ค์๋ ์ด ํ์ดํ๊ฐ ์ซ์๋ณด๋ค ๋ ์ค์ํฉ๋๋ค.PK/Cโ ํผํฌ ์ธก์ ๊ฐ๊ณผ ์ง๊ธ๊น์ง ์ ์ดํ ํ์.- ํ๋จ ์คํธ๋ฆฝ โ ์กฐ์ฉํ ๋๋ ์ค์๊ฐ ํํ๊ณผ ํ์ฌ ๊ฐ๋; ์บ๋ฆฌ์ด๊ฐ ๊ฐ์ง๋๋ ์๊ฐ
๊ฒ์์
โ ACTIVE READER๊ฒฝ๋ณด ๋ฐ๋ก ๋ฐ๋๋ฉฐ ๊ทผ์ ๋ ๋จ์ด๊ฐ ํ์๋ฉ๋๋ค. - ๊ทผ์ ๋ โ
FAINT โ NEAR โ CLOSE โ STRONG โ MAX.MAX๋ ๋ฏธํฐ๊ฐ ์ต๋์น์ ๋๋ฌํ๋ค๋ ๋ป์ ๋๋ค: ์ด ์ธก์ ์ด ๊ตฌ๋ถํ ์ ์๋ ํ๊ณ๊น์ง ๊ฐ๊น์ด ์๋ค๋ ๊ฒ์ ๋๋ค.
์๋ฆฌ. ์ ํ์ ๊ฐ์ด๊ฑฐ ํด๋ฆญ์์ด ๊ฐ๊น์์ง์๋ก ๋นจ๋ผ์ ธ์, Flipper๋ฅผ ์ฃผ๋จธ๋์ ๋ฃ์ ์ฑ ๊ท๋ก๋ง ์ถ์ ํ ์ ์์ต๋๋ค.
| ํค | ๋์ |
|---|---|
OK | ํผํฌ ํ๋์ ์ ์ด ํ์ ์ด๊ธฐํ |
hold OK | ์ด ์ธก์ ๊ฐ์ ๋ก๊ทธ๋ถ์ ์ ์ฅ |
LEFT | ๋ฐฉ์ ๋ ธ์ด์ฆ ํ๋ก์ด๋ก ๋ณด์ (3์ด) |
๐ฌ Fingerprint โ ์ด๋ค ์ข ๋ฅ์ธ๊ฐ?
ํ๋ ์ผ. Sweep์ด ๋ฌด์ธ๊ฐ๋ฅผ ์ฐพ์๋ค๋ฉด, Flipper๋ฅผ ๊ทธ๊ฒ์ ์์ง์ด์ง ์๊ณ ๋๊ณ ์์ผ์ธ์. Fingerprint๋ ๊ทผ์ ๋ ์ธก์ ์ ๋ฉ์ถ๊ณ ์บ๋ฆฌ์ด์ on/off ์์ง ํ์ด๋ฐ์ ์ธก์ ํ๊ธฐ ์์ํ๋๋ฐ, ์ด๊ฒ์ด ๋ฐ๋ก ํ ์ข ๋ฅ์ ๋ฐ์ ์์ ๋ค๋ฅธ ๊ฒ๊ณผ ์ค์ ๋ก ๊ตฌ๋ถํด ์ฃผ๋ ์์์ ๋๋ค.
๋ณด์ด๋ ๊ฒ. ํ์ , ์ ๋ขฐ๋ ๋ฐ, ๊ทธ๋ฆฌ๊ณ ๋์ ๊ทผ๊ฑฐ:
| ๋ถ๋ฅ | ์ค์ ์๋ฏธ |
|---|---|
| CONTINUOUS | ์บ๋ฆฌ์ด๊ฐ ์๊ตฌ์ ์ผ๋ก ์ ์ง๋จ |
| POLLING | ๊ณ ์ ๋, ์์ ๋ฐ์ง๊ธฐ ํ์ด๋ฐ์ ํด๋ง ์ฃผ๊ธฐ โ ์ฃผ๊ธฐ๊ฐ ms ๋จ์๋ก ํ์๋จ |
| INTERMITTENT | ๋ฒ์คํธํ์ด์ง๋ง ๋ถ๊ท์นํจ โ ํํ ํด๋ํฐ์ด๋ ์ฌ์ฉ ์ค์ธ ๋ฆฌ๋ |
์๋์๋ PER (ํด๋ง ์ฃผ๊ธฐ), BST (๋ฒ์คํธ ํญ), JIT (์งํฐ), DUTY (์ค์ ๋ํฐ
์ฌ์ดํด)๊ฐ ์๊ณ , ์์ ์บ๋ฆฌ์ด์ ๋ก์ง ์ ๋๋ผ์ด์ ํ์ค ํธ๋ ์ธ๋ ์์ด์ ํ์ ์
๊ทธ๋ฅ ๋ฏฟ์ด์ผ ํ๋ ๊ฒ์ด ์๋๋๋ค. ์ง์ง ํด๋ง ๋ฆฌ๋๋ ํ๋ฆผ์๋ ๊ตฌํํ๋ก ๋ํ๋ฉ๋๋ค.
ํ์ด๋ฐ ์์
~๋ 2 ms ์ํ๋ง ํํ์ ๊ฐ๊น๋ค๋ ๋ป์ด๋ฉฐ, ์ ๋ขฐ๋๋ ๊ทธ์ ๋ง๊ฒ ๋ฎ์ถฐ์ง๋๋ค.
| ํค | ๋์ |
|---|---|
OK | ๋ฐ๊ฒฌ ๋ด์ฉ์ ๋ก๊ทธ๋ถ์ ์ ์ฅ |
hold OK | ์ธก์ ์ฌ์์ |
๐บ๏ธ Site Survey โ ์ด ๋ฐฉ์ ๊นจ๋ํ๊ฐ?
ํ๋ ์ผ. ๊ณต๊ฐ ์ ์ฒด์ ๋ํ ์๊ฐ ์ ํ ์ค์์ ๋๋ค. ์์ํ๊ณ ๋ฐฉ์ ํ์์ฒ๋ผ ๊ฑธ์ด ๋ค๋๋ฉด ๋๋ ๋ ํ๋์ ํ์ ์ ๋ฐ์ต๋๋ค โ ๋ฐ๋์ ์ง์ผ๋ณผ ํ์๊ฐ ์์ต๋๋ค.
๋ณด์ด๋ ๊ฒ. ์คํ ์ค์๋ ์นด์ดํธ๋ค์ด๊ณผ ์งํ ๋ฐ๊ฐ ํ์๋๊ณ , ๊ทธ๋ค์ ํ์ ์นด๋๊ฐ ๋ํ๋ฉ๋๋ค:
CLEANโ ๋ ธ์ด์ฆ ํ๋ก์ด๋ฅผ ๋์ ๊ฒ์ด ์์TRACEโ ์งง๊ฑฐ๋ ํฌ๋ฏธํ ๊ฐ์ง; ๋ ๋๋ฆฐ 2์ฐจ ํจ์ค๊ฐ ํ์ํจACTIVE READERโ ๋ฌด์ธ๊ฐ ์ค์ ๋ก ์ผ์ ธ์ ๋ฐฉ์ถํ๊ณ ์์์
โฆMAX / AVG ํ๋, ์ ์ด ํ์, FIELD % โ ์๋ฒ ์ด ์ค ์บ๋ฆฌ์ด๊ฐ ์ค์ ๋ก ์ผ์ ธ
์๋ ๋น์จ โ ์ด ํจ๊ป ํ์๋๋ฉฐ, ์ด๋ ์ข
์ข
๋ค ์์น ์ค ๊ฐ์ฅ ๋ง์ ๊ฒ์ ๋งํด์ค๋๋ค.
30์ด, 60์ด ๋๋ 2๋ถ ๋์ ์คํ๋๋ฉฐ ๊ฒฐ๊ณผ๋ฅผ ์๋์ผ๋ก ๊ธฐ๋กํฉ๋๋ค.
| ํค | ๋์ |
|---|---|
OK | ์๋ฒ ์ด ๋ค์ ์คํ |
๐ฐ๏ธ Watch Mode โ ๋ด๊ฐ ์๋ ์ฌ์ด์ ๋ํ๋ฌ๋๊ฐ?
ํ๋ ์ผ. ๋ฌด๊ธฐํ ๊ฐ์ํฉ๋๋ค. ํ์ฑํํ๊ณ Flipper๋ฅผ ๋ด๋ ค๋๊ณ ์๋ฆฌ๋ฅผ ๋น์ฐ์ธ์. Sweep์ ๋ด๊ฐ ์ถ์ ํ๋ ๊ฒ์ด๊ณ Survey๋ ๊ณ ์ ๊ธธ์ด ํ ์คํธ์ธ ๋ฐ๋ฉด, Watch๋ ๊ทธ๋ฅ ๊ธฐ๋ค๋ฆฝ๋๋ค โ ๋ช ๋ถ์ด๋ ๋ช ์๊ฐ์ด๋ .
๋ณด์ด๋ ๊ฒ. ์๋ฌด๊ฒ๋ ์์ ๋๋ ํฐ ๊ฒฝ๊ณผ ์๊ณ์ ALL CLEAR๊ฐ ํ์๋ฉ๋๋ค.
๋ฆฌ๋๊ฐ ๋ํ๋๋ ์๊ฐ ๋ฐด๋๊ฐ **READER PRESENT**๋ก ๋ฐ์ ๋๊ณ , ํ๋ฉด์ด ๊นจ์ด๋๋ฉฐ,
๊ฒฝ๋ณด์์ด ์ธ๋ฆฝ๋๋ค. ๋ฐด๋๋ ๊น๋นก์ด์ง ์๊ณ ์ผ์ ํ๊ฒ ์ ์ง๋ฉ๋๋ค โ ๋์ ์์ ๋ง์ปค๊ฐ
๋งฅ๋ํ์ฌ, ๋์ ์๊ทนํ์ง ์์ผ๋ฉด์๋ ์ด์ ์์์ ๋ณด์ฌ์ค๋๋ค. ์ง๋๊ฐ ๋ค์๋ ํ๋ฉด์
์ฆ๊ฑฐ๊ฐ ๋จ์ต๋๋ค: HITS (๊ฐ๋ณ ์ ์ด ํ์), PEAK, LAST (๊ฐ์ฅ ์ต๊ทผ ์ ์ด์ด ์ผ๋ง๋
์ ์ด์๋์ง), SEEN (์บ๋ฆฌ์ด๊ฐ ์ค์ ๋ก ์ผ์ ธ ์๋ ์ด ์๊ฐ).
Watch๋ ์๋์ ์ผ๋ก ์คํ ์ค ๋ชจ๋๋ฅผ ๋ฌด์ํฉ๋๋ค โ ๋ฌด์ธ๊ฐ๋ฅผ ๋ณด์๋ค๋ ์ฌ์ค์ ๊ฒฐ์ฝ ์๋ ค์ฃผ์ง ์๋ ์ด๋ก๊ณ ์กฐ์ฉํ ๊ฐ์์๋ ์ธ๋ชจ์๋ ๊ฒ๋ณด๋ค ๋ชปํฉ๋๋ค.
| ํค | ๋์ |
|---|---|
OK | ์ฌ๋ฌด์ฅ โ ์๊ณ์ ์นด์ดํฐ ์ด๊ธฐํ |
๐ Logbook โ ๋ฌด์์, ์ธ์ ์ฐพ์๋๊ฐ?
๋ฐ๊ฒฌ ๋ด์ฉ์ ํ ๋ฒ์ ๋์์ผ๋ก ๋ ๋ฒ ์ ์ฅ๋๋ฏ๋ก, ๊ธฐ๊ธฐ์์ ์ฝ์ ์ ์์ผ๋ฉด์ ๋์์ ์ด๋ฏธ ์คํ๋ ๋์ํธ ํํ์ ๋๋ค โ ๊ธฐ์ตํด์ผ ํ ๋ด๋ณด๋ด๊ธฐ ๋จ๊ณ๊ฐ ์์ต๋๋ค:
logbook.txt โ ๊ธฐ๊ธฐ ๋ด ๋ทฐ์ด์ฉ, ๊ทธ๋ฃนํ๋จ | logbook.csv โ ํญ๋ชฉ๋น ํ ํ์ ํ๋ฉด ๊ตฌ์กฐ |
|---|---|
| ``` 2026-07-18 14:35:11 SURVEY 60s ACTIVE max74โฆ 2026-07-18 14:32:07 READER POLLING 204msโฆ ``` | ``` timestamp,type,detail 2026-07-18 14:35:11,SURVEY,60s ACTIVE โฆ 2026-07-18 14:32:07,READER,POLLING 204ms โฆ ``` |
ํญ๋ชฉ์ SWEEP, READER, SURVEY ๋๋ WATCH๋ก ํ๊ทธ๋๋ฉฐ Flipper์ ์๊ณ๋ฅผ ๊ธฐ์ค์ผ๋ก ๊ธฐ๋ก๋ฉ๋๋ค. ๋ ํ์ผ ๋ชจ๋ SD ์นด๋์ apps_data/specter/์ ์ ์ฅ๋ฉ๋๋ค. ์ด๋ค ๋ฐ์ดํฐ๋ ๊ธฐ๊ธฐ ๋ฐ์ผ๋ก ๋๊ฐ์ง ์์ต๋๋ค. Settings โ Clear logbook์์ ์ญ์ ํ ์ ์์ต๋๋ค(๋จผ์ ํ์ธ์ ์๊ตฌํฉ๋๋ค โ ์ด ์ฑ์ด ํ ์ ์๋ ์ ์ผํ ๋๋๋ฆด ์ ์๋ ์์
์
๋๋ค).
โ๏ธ ์ง์ ๊ธฐ๋ฅ
๐ฏ ์๋ ๋ณด์
Sweep ํ๋ฉด์์ LEFT๋ฅผ ๋๋ฅด๋ฉด Specter๊ฐ 3์ด ๋์ ์ฃผ๋ณ ๋ ธ์ด์ฆ ํ๋ก์ด๋ฅผ ์ฒญ์ทจํ ํ, ์ธก์ ๋ ๊ฐ ๋ฐ๋ก ์๋ก ํ์ง ์๊ณ๊ฐ์ ์ค์ ํฉ๋๋ค โ ์ด๋ Custom ๊ฐ๋๋ก ์ ์ฅ๋ฉ๋๋ค. ๋ชจ๋ ๊ณต๊ฐ์ ์๋ก ๋ค๋ฅธ RF ํ๋ก์ด๋ฅผ ๊ฐ์ง๊ณ ์์ผ๋ฏ๋ก, ๋น๋ ์์ ์ ์ ํด์ง ๊ฐ ๋์ ํ์ฌ ์ ์๋ ๊ณต๊ฐ์ ๋ง๊ฒ ์กฐ์ ๋ฉ๋๋ค. ์คํํ ๋๋ ์กฐ์ฉํ ๊ณณ์ ์์ญ์์ค.
๐ถ๏ธ ์คํ ์ค ๋ชจ๋
์ ์ฒด ์ค์ํ ๋์ ํ๋ฉด๊ณผ LED๋ฅผ ์ด๋ก๊ฒ ์ ์งํ์ฌ, ๋น์ ์ด ๊ด์ฐฐํ๋ ์
์ฅ์ผ ๋ Flipper๊ฐ ๋น๋์ง ์๋๋ก ํฉ๋๋ค. ์๋ฆฌ์ ์ง๋์ ๊ณ์ ์๋ํฉ๋๋ค โ ์์ ์ ์ค์ํ์ ํผ๋๋ฐฑ์ ๋๋ ๊ฒ์ด ์๋๊ธฐ ๋๋ฌธ์
๋๋ค. ์คํ
์ค ํ๋ฉด์ ๋๊ฐ๋ฉด ๋์คํ๋ ์ด๊ฐ ๋ค์ ์ผ์ง๋ฏ๋ก, BACK์ ํญ์ ๋ฐ์ ๋ฉ๋ด๋ก ๋์๊ฐ๋๋ค.
๐ ๋ฏธํฐ ์ฝ๊ธฐ
๋ง์ง๊ณ ์๋ ๋ฆฌ๋๊ฐ ํญ์ 100%๋ฅผ ๋ฐฉ์ถํ์ง ์๋ ์ด์ . ์ด ํ์ง๊ธฐ๋ ํ ๊ฐ์ง ๋ฌผ๋ฆฌ์ ์ฌ์ค๋ง์ ์ธก์ ํฉ๋๋ค: 13.56 MHz ๋ฐ์กํ๊ฐ ์ผ์ ธ ์๋ ์๊ฐ์ ๋น์จ์ ๋๋ค. ํ์ง๋ง ๋ฆฌ๋๋ ํด๋งํฉ๋๋ค โ ์งง์ ๋ฒ์คํธ, ํด์, ๋ ๋ค๋ฅธ ๋ฒ์คํธ. ์ผ๋ฐ์ ์ธ ๋จ๋ง๊ธฐ๋ ์๊ฐ์ 20โ35%๋ง ๋ฐฉ์ฌํ๋ฏ๋ก, ์์ ๋ํฐ ์ฌ์ดํด์ ์๋ฌด๋ฆฌ ๊ฐ๊น์ด ๊ฐ๋ ์ฝ 30%์์ ํฌํ๋ฉ๋๋ค.
๊ทธ ์์ ์์น๋ฅผ ๊ฒ์ด์ง์ ํ์ํ๋ฉด ์๋ฒฝํ ํ์ง๊ฐ 3๋ถ์ 1์ฒ๋ผ ๋ณด์์ต๋๋ค. ๋์ ๋ฏธํฐ๋ ์ค์ ํด๋ง ๋์ญ์ ๊ธฐ์ค์ผ๋ก ์กฐ์ ๋ฉ๋๋ค:
| ์์ ๋ฐ์กํ ๋ํฐ | ๋ฏธํฐ | ๊ทผ์ ๋ |
|---|---|---|
| 3% (๊ณต๊ฐ ๋ ธ์ด์ฆ) | 10% | FAINT |
| 12% | 40% | NEAR |
| 20% | 67% | CLOSE |
| 28% | 93% | STRONG |
| โฅ30% (๋ฆฌ๋ ์์ ๋์ธ ์ํ) | 100% | MAX |
์์ ๋ํฐ๋ ๊ฒฐ์ฝ ์์ค๋์ง ์์ต๋๋ค: ๋
ธ์ด์ฆ ํ๋ก์ด, ์๋ ๋ณด์ , Fingerprint ํ๋ฉด์ DUTY๋ ๋ชจ๋ ์ค์ ๋ํฐ ์ฌ์ดํด๋ก ์๋ํฉ๋๋ค. ์๋ํ๋ฉด ๊ทธ๊ฒ๋ค์ ์ ํธ๋ฅผ ์ค๋ช
ํ๋ ๊ฒ์ด์ง, ์ ํธ๋ก๋ถํฐ์ ๊ฑฐ๋ฆฌ๋ฅผ ์ค๋ช
ํ๋ ๊ฒ์ด ์๋๊ธฐ ๋๋ฌธ์
๋๋ค. ๋ฌธ์ ๊ทธ๋๋ก์ ์ซ์๋ฅผ ์ํ์ญ๋๊น? Settings โ Meter โ Raw.
๐พ ๋ชจ๋ ๊ฒ์ด ์ ์ง๋ฉ๋๋ค
๊ฐ๋, ์ค์ํ ๊ธธ์ด, ์๋ฆฌ, ์ง๋, LED, ์คํ ์ค, ๋ก๊น , ๋ฏธํฐ ๋ชจ๋๋ ๋ณ๊ฒฝํ๋ ์ฆ์ SD ์นด๋์ ์ ์ฅ๋ฉ๋๋ค. ์ค์ ์ ์์ด๋ฒ๋ฆฌ๋ ์ค์ํ ํคํธ๋ ์์ ์ ์ง ๊ธฐ๋ฅ์ด ์๋ ๊ฒ๋ณด๋ค ๋์ฉ๋๋ค.
๐ง ์๋ ์๋ฆฌ
์ ์์ด ์ผ์ง ๋ชจ๋ NFC ๋ฆฌ๋๋ ์นด๋๊ฐ ๊นจ์ด๋๊ธฐ๋ฅผ ๊ธฐ๋ค๋ฆฌ๋ฉฐ ์ง์์ ์ผ๋ก 13.56 MHz ๋ฐ์กํ๋ก ๊ณต๊ธฐ๋ฅผ ํํฉ๋๋ค. ๋น์ ์ ๋ณผ ์ ์์ง๋ง, Flipper์ NFC ์นฉ์ ๋ณผ ์ ์์ต๋๋ค: ST25R3916์๋ ํ๋์จ์ด ์ธ๋ถ ํ๋ ๊ฐ์ง๊ธฐ๊ฐ ์์ต๋๋ค(Flipper๊ฐ ์นด๋๋ฅผ ์๋ฎฌ๋ ์ดํธํ๊ณ ๋ฆฌ๋๊ฐ ์์ ๊ณผ ํต์ ํ๊ณ ์์์ ์ ์ ์๊ฒ ํ๋ ๋์ผํ ํ๋ก). Specter๋ ์นฉ์ ๊ฐ์ง ์ ์ฉ ๋ชจ๋๋ก ๋๊ณ ๊ทธ "ํ๋ ์กด์ฌ?" ๋นํธ๋ฅผ ์ด๋น ์ฝ 500ํ ์ํ๋งํฉ๋๋ค โ ์์ฒด ๋ฐ์กํ๋ฅผ ์ผ์ง ์๊ณ ์๋ ๋ง์ ๋๋ค.
์ถฉ๋ถํ ๋น ๋ฅด๊ฒ ์ํ๋ง๋ ๊ทธ ๋จ์ผ ๋นํธ๋ ๋ ๊ฐ์ง ๋
๋ฆฝ์ ์ธ ์ ํธ๋ฅผ ๋ด๊ณ ์์ต๋๋ค:```mermaid
flowchart LR
R["๐ Hidden 13.56 MHz reader / skimmer
(constantly polling its field)"] -- "RF carrier" --> A
subgraph FLIP["Flipper Zero โ Specter.fap"]
A["ST25R3916 NFC chip<br/>external-field detector"] --> S["Sampler thread<br/>~500 samples/s"]
S --> M["<b>How much?</b><br/>carrier duty-cycle<br/>peak ยท average ยท contacts"]
S --> C["<b>What rhythm?</b><br/>burst / gap edge timing<br/>period ยท jitter"]
M --> G["EMF gauge ยท waveform<br/>geiger clicks ยท LED ยท vibe"]
M --> V["Survey verdict<br/>CLEAN / TRACE / ACTIVE"]
C --> K["Emitter class<br/>CONTINUOUS / POLLING /<br/>INTERMITTENT + pulse train"]
V --> L["๐ SD logbook"]
K --> L
end
**์ผ๋ง๋ โ ๊ฐ๋.** ์งง์ ์๊ฐ ์ฐฝ์์ Specter๋ ์บ๋ฆฌ์ด๊ฐ *์ผ๋ง๋ ์์ฃผ* ์กด์ฌํ๋์ง๋ฅผ ์ธก์ ํ๊ณ ์ด๋ฅผ ํํํํ์ฌ **FIELD %**๋ก ๋ง๋ ๋ค. Flipper ๋ฐ๋ก ์์ ์๋ ๋ฆฌ๋๋ ๋ฏธํฐ๋ฅผ ์ต๋๋ก ์ฌ๋ฆฌ๊ณ , ๋ ์ฝํ๊ฑฐ๋ ๋ ๋ฉ๋ฆฌ ์๋ ๋ฆฌ๋๋ ๋ฏธํฐ๋ฅผ ์ด์ง ์์ง์ธ๋ค. ์ด๊ฒ์ด ๋ฐ๋, ๊ทผ์ ๋ ๋จ์ด, ํด๋ฆญ ์๋๋ฅผ ๊ตฌ๋ํ๋ค.
**์ด๋ค ๋ฆฌ๋ฌ โ ์ ์ฒด์ฑ.** ๋ณ๋๋ก, ํด๋น ๋นํธ์ ๋ชจ๋ ์ ํ์ ์๊ฐ์ด ์ธก์ ๋๋ค. 200 ms๋ง๋ค 20 ms ๋์ ๊นจ์ด๋๋ ๋ฆฌ๋๋ ๊ฑฐ์ ์งํฐ๊ฐ ์๋ ๋ฒ์คํธ/๊ฐญ ํจํด์ ์์ฑํ๋๋ฐ, ๊ทธ ํด๋ง ๋ฃจํ๊ฐ ํฌ๋ฆฌ์คํธ๋ก ํ์ด๋ฐ๋ ์ํ ๋จธ์ ์ ์ํด ๊ตฌ๋๋๊ธฐ ๋๋ฌธ์ด๋ค. ์์ ์์ง์๊ณผ RF ๋
ธ์ด์ฆ๋ ๊ทธ๋ ๊ฒ ์ผ์ ํ์ง ์๋ค. ๊ทธ ์ฐจ์ด๊ฐ **POLLING**๊ณผ **INTERMITTENT**๋ฅผ ๊ตฌ๋ถํ๋ ๊ฒ์ด๋ค.
### ๊ฒฐ์ ๊ณ์ธต์ ์ค์ ์ปดํจํฐ์์ ํ
์คํธ๋๋ค
Specter๊ฐ ์ซ์๋ฅผ *์ฃผ์ฅ*์ผ๋ก ๋ฐ๊พธ๋ ์ง์ โ "์ด๊ฒ์ ํด๋ง ๋ฆฌ๋๋ค", "์ด ๋ฐฉ์ ๊นจ๋ํ๋ค", "์ด๊ฒ์ด ๋ฐ๋์ด ์ฝ์ด์ผ ํ ๊ฐ์ด๋ค" โ ์ ํ๋์จ์ด ์์กด์ฑ์ด ์๋ ์์ C์ด๋ฉฐ, ๊ธฐ๊ธฐ์์ ๋ฐ๊ฒฌ๋๋ ๊ฒ์ด ์๋๋ผ ํธ์คํธ ํ
์คํธ์ ์ํด ๊ณ ์ ๋๋ค:```bash
make -C test # 300 checks: classifier, verdict, meter scaling, presence
๐ ์ค์น
๊ฐ๋ฐ ๋ณด๋๋, ํ๋์ฑํ ํ์จ์ด๋ ํ์ ์์ต๋๋ค โ ๋จ์ผ .fap ํ์ผ์
๋๋ค.
์ต์
A โ ๋ฏธ๋ฆฌ ๋น๋๋ .fap (๊ฐ์ฅ ์ฌ์)
-
Releases ํ์ด์ง์์ ์๋ง์
.fap์ ๋ฐ์ผ์ธ์:์ฌ์ฉ ์ค์ธ ํ์จ์ด ํ์ผ ๊ณต์ / stock specter.fapUnleashed, RogueMaster, Momentum ๋๋ ๊ทธ๋ณด๋ค ์ต์ specter-fw-dev.fapFlipper๊ฐ
APP:87 < FW:88 โ This app might not work๋ผ๊ณ ํ์ํ๋ฉด ์๋ชป๋ ํ์ผ์ ๋ฐ์ ๊ฒ์ ๋๋ค โ ๋ค๋ฅธ ํ์ผ์ ์ฌ์ฉํ์ธ์. ์ฑ์ API ๋ฒ์ ์ ์ปดํ์ผ ์์ ์ ๊ณ ์ ๋๋ฏ๋ก, ๋จ์ผ ๋น๋๋ก ๋ ํ์จ์ด ๊ณ์ด์ ๋ชจ๋ ๋ง์กฑ์ํฌ ์ ์์ต๋๋ค. ๋ณดํต์ Continue๋ฅผ ๋๋ฅด๋ฉด ์ฌ์ ํ ์คํ๋์ง๋ง, ๋ง๋ ๋น๋๋ ์ด ๋ฉ์์ง๋ฅผ ํ์ํ์ง ์์ต๋๋ค. -
qFlipper๋ฅผ ์ด๊ณ ํ์ผ์
SD Card / apps / NFC /๋ก ๋๋๊ทธํ์ธ์. -
Flipper์์: Apps โ NFC โ Specter.
์ต์
B โ ufbt๋ก ์ง์ ๋น๋ํ๊ธฐ```bash
one-time
python3 -m pip install --upgrade ufbt
from the repo root, with your Flipper plugged in over USB:
ufbt # build specter.fap into ./dist ufbt launch # build, upload to the Flipper and open it make -C test # run the host tests for the pure logic
`.fap` ํ์ผ์ `dist/specter.fap`์ ์์ฑ๋ฉ๋๋ค. `ufbt launch`๋ฅผ ์คํํ๋ฉด `apps/NFC/`๋ก ๋ณต์ฌ๋๊ณ ์๋์ผ๋ก ์คํ๋ฉ๋๋ค.
> `icons/`์ ์์ด์ฝ, `images/`์ ์คํฌ๋ฆฐ์ท๊ณผ ๋ฐฐ๋๋ ์์ฑ๋ ํ์ผ์
๋๋ค โ `python3 tools_gen_icons.py`, `python3 tools_gen_mockups.py`, `python3 tools_gen_banner.py`๋ก ๋ค์ ์์ฑํ์ธ์ (`pillow` ํ์).
---
## ๐ฎ ์ฌ์ฉ๋ฒ
**์ค์, ์ฒ์๋ถํฐ ๋๊น์ง:**
1. **Specter**๋ฅผ ์คํํฉ๋๋ค. **Sweep** ํ๋ฉด์์ **LEFT**๋ฅผ ๋๋ฅด๊ณ 3์ด๊ฐ ์์ง์ด์ง ์์ผ๋ฉด ๋ฐฉ์ ๋
ธ์ด์ฆ ํ๋ก์ด์ ๋ง์ถฐ ๋ณด์ ๋ฉ๋๋ค.
2. Flipper๋ฅผ ํํํ๊ฒ ๋ค๊ณ ํ์ธํ๋ ค๋ ๋์ โ ์นด๋ ๋จ๋ง๊ธฐ, ๋์ด ๋ฆฌ๋, ATM ํ๋จ ํ์, ํ๋ฐฐ ์์, ์ฑ
์ โ ์๋ฅผ **์ฒ์ฒํ** ์์ง์
๋๋ค.
- **์กฐ์ฉํจ / ํํํ ํํ** โ ๋ฒ์ ๋ด์ ํ์ฑ ๋ฆฌ๋ ์์.
- **๋ฐ๋์ด ์ฌ๋ผ๊ฐ๊ณ ํด๋ฆญ์ด ๋นจ๋ผ์ง** โ ์ด๋ฏธํฐ์ ์ ๊ทผ ์ค. ํผํฌ๋ฅผ ํฅํด ๊ณ์ ์ด๋ํ์ธ์.
- **`โ ACTIVE READER` + ๊ฒฝ๋ณด ํ
๋๋ฆฌ** โ ๋ฐ๋ก ์ฌ๊ธฐ์ ํ์ฑ ๋ฆฌ๋๊ฐ ์์ต๋๋ค.
3. ๋ญ๊ฐ ์ฐพ์๋์? ๋ค๋ก ๋๊ฐ์ **Fingerprint**๋ฅผ ์ฝ๋๋ค. Flipper๋ฅผ ๋์์ ๋๊ณ ์์ง์ด์ง ์๊ณ ์ฃผ๊ธฐ๋ฅผ ์์ ์ํต๋๋ค โ ๋ณดํต ๋ช ์ด๋ฉด ์ถฉ๋ถํฉ๋๋ค. **OK**๋ฅผ ๋๋ฌ ๋ฐ๊ฒฌ ๋ด์ฉ์ ์ ์ฅํฉ๋๋ค.
4. ๋ฐฉ ์ ์ฒด๋ฅผ ์ ๋ฆฌํ๋ ค๋ ๊ฒฝ์ฐ? **Site Survey**๋ฅผ ์ด๊ณ ๋ฐ๊ฐ ์ฑ์์ง ๋๊น์ง ๊ณต๊ฐ์ ๊ฑธ์ด๋ค๋ ๋ค ํ์ ์ ํ์ธํฉ๋๋ค.
5. ๊ทธ ๊ตฌ์ญ์ ๋ ๋๋์? Flipper๋ฅผ **Watch Mode**๋ก ๋๋ฉด ๊ฒฝ๊ณ๋ฅผ ์๋ฉฐ, ์๋ฆฌ๋ฅผ ๋น์ด ์ฌ์ด ๋ฆฌ๋๊ฐ ๋ํ๋๋ฉด ๊นจ์ด๋ ์๋์ ์ธ๋ฆฝ๋๋ค.
6. ์ ์ฅํ ๋ชจ๋ ํญ๋ชฉ์ ํ์์คํฌํ์ ํจ๊ป ๋ณด๋ ค๋ฉด **Logbook**์ ํ์ธํ๊ฑฐ๋, ์นด๋์์ `logbook.csv`๋ฅผ ๊บผ๋ด ์คํ๋ ๋์ํธ๋ก ๊ฐ์ ธ์ต๋๋ค.
> ๐ก ๋จผ์ ์ ์ ์๋์ด ํ์ธ๋ ๋ฆฌ๋(NFC๋ฅผ ์ผ ๋ณธ์ธ ํด๋ํฐ, ๋๋ ์ ๋ขฐํ๋ ๋น์ ์ด ๋จ๋ง๊ธฐ)๋ฅผ ์ค์ํด์ ๊ฐํ๊ณ ์ ์์ ์ธ ํ๋๊ฐ ๋ฏธํฐ์ ์ด๋ป๊ฒ ํ์๋๋์ง โ ๊ทธ๋ฆฌ๊ณ ๊ทธ ์ง๋ฌธ์ด ์ด๋ป๊ฒ ์ฝํ๋์ง โ ํ์ธํ์ธ์. ๊ทธ๋ฐ ๋ค์ ์ฌ๋ฅ์ ์์ํ์ธ์.
### ์กฐ์๋ฒ
| ํ๋ฉด | ํค | ๋์ |
|---|---|---|
| **Sweep** | `OK` | ํผํฌ / ์ ์ด ์ด๊ธฐํ |
| | `hold OK` | ํ์ฌ ์ธก์ ๊ฐ ๊ธฐ๋ก |
| | `LEFT` | ๋
ธ์ด์ฆ ํ๋ก์ด ๋ณด์ (3์ด) |
| **Fingerprint** | `OK` | ๋ฐ๊ฒฌ ๋ด์ฉ์ ๋ก๊ทธ๋ถ์ ์ ์ฅ |
| | `hold OK` | ์ธก์ ์ฌ์์ |
| **Site Survey** | `OK` | ์ค๋ฌธ ๋ค์ ์คํ |
| **Watch Mode** | `OK` | ์ฌ๋ฌด์ฅ (์นด์ดํธ์ ์๊ณ ์ด๊ธฐํ) |
| *์ด๋์๋* | `BACK` | ํ ๋จ๊ณ ์๋ก |
---
## ๐ฌ ์์งํ ํ๊ณ
- **13.56 MHz (HF) ์ ์ฉ.** Specter๋ **NFC ๋์ญ** โ ๋น์ ์ด ๊ฒฐ์ ์คํค๋จธ, ๋๋ถ๋ถ์ ์ต์ ์ถ์
๋ฆฌ๋, ๊ตํต ๋ฐ ํธํ
๋ฆฌ๋๊ฐ ์ฌ์ฉํ๋ ๋์ญ โ ์ ๊ฐ์งํฉ๋๋ค. **125 kHz (LF)** ๋ฆฌ๋(๊ตฌํ HID Prox / EM4100 ๋์ด ํจ๋)๋ **๋ณผ ์ ์์ต๋๋ค**; Flipper์ LF ๊ฒฝ๋ก์๋ ์ด์ ์์ํ๋ ํ๋ ๊ฐ์ง ๋นํธ๊ฐ ์์ต๋๋ค.
- **๋ฆฌ๋์ *์บ๋ฆฌ์ด*๋ฅผ ๊ฐ์งํ ๋ฟ, ์ฝ๋ ๋ด์ฉ์ ๊ฐ์งํ์ง ์์ต๋๋ค.** Specter๋ *์ฌ๊ธฐ์ ํ์ฑ ๋ฆฌ๋๊ฐ ์๊ณ , ๋๋ต ์ผ๋ง๋ ๊ฐ๊น์ฐ๋ฉฐ, ์ด๋ค ๋ฆฌ๋ฌ์ผ๋ก ํด๋งํ๋์ง*๋ฅผ ์๋ ค์ค๋๋ค โ ๋ฆฌ๋๊ฐ ํ๋ ์ด๋ค ๊ฒ๋ ๋์ฝ๋ฉ, ์๋ณ, ์บก์ฒํ์ง ์์ต๋๋ค.
- **๊ฐ๋๋ ์๋์ ์ด๋ฉฐ ๋ณด์ ๋ ๊ฐ์ด ์๋๋๋ค.** `FIELD %`์ ๊ทผ์ ๋ ๋จ์ด๋ ์ค์์ ์ํ ๋น๊ต์ "๋ฐ๋ปํจ / ์ฐจ๊ฐ์" ๊ฐ์ด๋์ด๋ฉฐ, cm ๋จ์์ ์ธก์ ๊ฑฐ๋ฆฌ๊ฐ ์๋๋๋ค. ์ด๋ ์ผ๋ฐ์ ์ธ ํด๋ง ๋์ญ ๋๋น ์บ๋ฆฌ์ด ๋ํฐ ์ฌ์ดํด์ *์ค์ผ์ผ๋ง๋* ํ๋
๊ฐ์
๋๋ค([๋ฏธํฐ ์ฝ๊ธฐ](#-reading-the-meter--fixed-in-23) ์ฐธ์กฐ); ๋น์ ์์ ์ผ๋ก ๋๋ฌผ๊ฒ ํด๋งํ๋ ๋ฆฌ๋๋ ๊ฐ์ ๊ฑฐ๋ฆฌ์์ ๋ ๋ฎ๊ฒ ์ฝํ๊ณ , ์ฐ์ํ ๋ชจ๋์ ๋ฆฌ๋๋ ๋ ๋ฉ๋ฆฌ์๋ ์ต๋์น๋ฅผ ์ฐ์ต๋๋ค.
- **๋ฏธํฐ๋ ์ต๋์น๊ฐ ์์ต๋๋ค.** `MAX`๋ ์ด ๋ฆฌ๋๊ฐ ์ ์งํ๋ ๋งํผ ์บ๋ฆฌ์ด๊ฐ ์ต๋๋ก ์ฌ๋ผ๊ฐ๋ค๋ ๋ป์
๋๋ค โ ๊ทธ ์ง์ ์ ๋์ผ๋ฉด ๋ ๊ฐ๊น์ด ๊ฐ๋ ์ค์ ๋ก ๋ ํฐ ์ซ์๊ฐ ๋์ฌ ์ ์์ต๋๋ค. ๋์ `PK` ํผํฌ ํ๋๋ฅผ ์ฌ์ฉํด ์์น๋ฅผ ๋น๊ตํ์ธ์.
- **์ฃผ๊ธฐ๋ ์ฝ 2 ms๊น์ง ๋ถํด๋ฉ๋๋ค.** ์ด๊ฒ์ด ์ํ๋ง ์ฃผ๊ธฐ์
๋๋ค. ๊ทธ ๊ทผ์ฒ์ ํ์ด๋ฐ์ **`~`**์ ํจ๊ป ํ์๋๊ณ ์ ๋ขฐ๋๋ ๊ทธ์ ๋ฐ๋ผ ํ ์ธ๋ฉ๋๋ค โ Specter๋ ์์ ์ด ๋ท๋ฐ์นจํ ์ ์๋ ์ ๋ฐํด ๋ณด์ด๋ ์ซ์๋ฅผ ์ ์ํ๊ธฐ๋ณด๋ค ์์ ์ ๋ถํด๋ฅ ํ๊ณ๋ฅผ ํ์ํ๋ ์ชฝ์ ํํฉ๋๋ค.
- **`CLEAN`์ ์ ํํ ๊ฐ๋์์ ๊นจ๋ํ๋ค๋ ๋ป์
๋๋ค.** ์ค์ ํญ์์๋ง ๊นจ์ด๋๋ ํด๋ฉด ์คํค๋จธ, ๋๋ ์ฐจํ๋ ์คํค๋จธ๋ *์ด๋ค* ์๊ณ๊ฐ์์๋ ๋ณด์ด์ง ์์ต๋๋ค. ํ๋
๊ฐ์ด ์๋ค๊ณ ํด์ ์๋ค๋ ๋ณด์ฅ์ ์๋๋๋ค.
- **ํ ๋ฒ์ ํ๋์ ๋ฌด์ ๋ง.** Specter๋ ์ค์ ์ค NFC ์นฉ์ ์ ์ ํ๋ฏ๋ก ๋ค๋ฅธ NFC ์ฑ์ ๋จผ์ ๋ซ์ผ์ธ์ (๋ค๋ฅธ ๊ฒ์ด ๋ฌด์ ์ ์ ์ ํ๊ณ ์์ผ๋ฉด *NFC unavailable*์ด๋ผ๊ณ ํ์๋ฉ๋๋ค).
---
## โ๏ธ ๋ฒ์ ๋ฐ ์ค๋ฆฌ์ ๊ณ ์ง
Specter๋ **๋ฐฉ์ด์ , ์์ ์ ์ฉ** ๋๊ตฌ์
๋๋ค โ **์ ๋ ์ก์ ํ์ง ์๊ณ **, ํ๋์ ์ ๋ ฅ์ ๊ณต๊ธํ์ง ์์ผ๋ฉฐ, ๋ฆฌ๋๋ฅผ ๊ฑด๋๋ฆฌ์ง ์์ต๋๋ค. **๋ณธ์ธ**์ POS ๊ตฌ์ญ, ๋์ด, ์ฑ
์ ๋๋ ์์งํ, ๋๋ **๋ช
์์ ์ผ๋ก ๊ถํ์ ๋ถ์ฌ๋ฐ์** ํ๋์จ์ด๋ฅผ ์ค์ํ๋ ๋ฐ ์ฌ์ฉํ์ธ์. ์ฌ์ฉ ๋ฐฉ์์ ๋ํ ์ฑ
์์ ๋ณธ์ธ์๊ฒ ์์ต๋๋ค. ํ์ง ๋ฒ๋ฅ ์ ์์งํ์ธ์.
---
## ๐บ๏ธ ๋ก๋๋งต
- [x] ์ฌ๋ถํ
ํ์๋ ๊ฐ๋ / ์ฌ์ด๋ / ์ง๋ / LED ์ ์ง
- [x] ํ์์คํฌํ๊ฐ ํฌํจ๋ ๊ฐ์ง "Logbook"์ SD ์นด๋์ ์ ์ฅ
- [x] ํ๋ฉด ๊บผ์ง ์ํ์ ๋ฐฑ๊ทธ๋ผ์ด๋ ์ค์ โ *์คํ
์ค ๋ชจ๋*
- [x] ๋ ์ธ๋ฐํ ๋ฒ์ ์ ์ด๋ฅผ ์ํ ์กฐ์ ๊ฐ๋ฅํ ์๊ณ๊ฐ โ *์๋ ๋ณด์ + ์ฌ์ฉ์ ์ง์ ๊ฐ๋*
- [x] ํด๋ง ์ฃผ๊ธฐ๋ก ์ด๋ฏธํฐ ์ง๋ฌธ ์ฑ์ทจ
- [x] ๋ฐฉ ํ์ ์ด ํฌํจ๋ ์๊ฐ ์ ํ ์ฌ์ดํธ ์ค๋ฌธ
- [x] ๋ณด๊ณ ์ฉ ๋ก๊ทธ๋ถ CSV ๋ด๋ณด๋ด๊ธฐ โ *.txt์ ํจ๊ป ์ค์๊ฐ์ผ๋ก ์์ฑ*
- [x] ๊ฐ์ง ์ ๊นจ์ฐ๋ ์๋์ด ์๋ ์ฅ์๊ฐ ๋ฌด์ธ ๊ฐ์ ๋ชจ๋
- [x] ์ค์ ํด๋ง ๋ฆฌ๋์ ๋ํด ๋ฏธํฐ๊ฐ ์ ์ฒด ๋ฒ์๋ฅผ ์ฌ์ฉํ๋๋ก ๊ฐ์
- [x] ์ฌ๋ฅ ์ค ๋ฐ๋ปํจ/์ฐจ๊ฐ์ ์ถ์ธ ํ์ดํ
- [ ] ๋ณ๋ ๋ชจ๋๋ก์ LF (125 kHz) ์ฝ์ผ ๊ธฐ๋ฐ ๋ฆฌ๋ ๊ฐ์ง ์กฐ์ฌ
- [ ] ๊ธฐ๊ธฐ ๋ด ๋ก๊ทธ๋ถ ์ ํ๋ณ ํํฐ๋ง
---
## ๐๏ธ ํ๋ก์ ํธ ๊ตฌ์กฐ```
Specter-FlipperZero/
โโโ application.fam # Flipper app manifest (category: NFC)
โโโ specter.c / specter_i.h # app entry, wiring, alert feedback, stealth
โโโ helpers/
โ โโโ field_detector.{c,h} # worker thread: samples the field-present bit,
โ โ # duty-cycle + edge timing + calibration
โ โโโ emitter_classify.{c,h} # pure: cadence -> CONTINUOUS/POLLING/INTERMITTENT
โ โโโ survey_verdict.{c,h} # pure: survey stats -> CLEAN/TRACE/ACTIVE
โ โโโ field_scale.{c,h} # pure: raw carrier duty -> full-scale meter
โ โโโ present_hold.h # pure: debounce presence across poll gaps
โ โโโ specter_settings.{c,h} # persisted settings (saved_struct)
โ โโโ specter_log.{c,h} # SD logbook, RTC-stamped .txt + live .csv
โโโ views/
โ โโโ sweep_view.{c,h} # the EMF gauge / waveform / alarm screen
โ โโโ fingerprint_view.{c,h} # classification card + pulse-train trace
โ โโโ survey_view.{c,h} # progress + verdict card
โ โโโ watch_view.{c,h} # unattended guard: clock + count + alarm
โโโ scenes/ # scene-manager navigation
โโโ test/ # host tests for the pure decision layers
โโโ icons/ # 1-bit Flipper icons (generated)
โโโ images/ # banner + screen mockups (generated)
โโโ tools_gen_*.py # regenerate icons / mockups / banner
๐จ ๋ธ๋๋ฉ
๋ชจ๋ ์ํธ์ํฌ๋ ์์ฑ๋๋ฏ๋ก ์ฑ๊ณผ ์ ๋ ์ด๊ธ๋์ง ์์ต๋๋ค:
| ์์ | ํฌ๊ธฐ | ์์น |
|---|---|---|
images/banner.png | 2560ร800 | README ํค๋ (๋ ํฐ๋์์ ์ ๋ช ํ๊ฒ ์ ์ง๋๋๋ก 2ร) |
images/social-preview.png | 1280ร640 | Settings โ Social preview โ GitHub ๊ถ์ฅ ํฌ๊ธฐ (์ต์ 640ร320, 1 MB ์ ํ) |
images/mark.png | 512ร512 | ์ ์ฌ๊ฐํ ๋ก๊ณ ๋งํฌ: ์๋ฐํ, ํ๋น์ฝ, ์ฌ๋ผ์ด๋ |
images/demo.gif | 768ร384 | ์์ ์ ๋๋ฉ์ด์ , ์ฝ 9์ด, ์ค์ ๋ทฐ ์์๋ก ์ ์ |
| python3 tools_gen_banner.py # banner, social preview, logo mark | ||
| python3 tools_gen_gif.py # the demo animation | ||
| python3 tools_gen_mockups.py # screen stills | ||
| python3 tools_gen_icons.py # 1-bit Flipper icons |
> ์์
๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ GitHub๊ฐ ์ ์ฅ์์์ ๊ฐ์ ธ์ฌ ์ ์๋ ์ ์ผํ ์์ฐ์
๋๋ค โ
> **Settings โ Social preview**์์ ํ ๋ฒ ์๋์ผ๋ก ์
๋ก๋ํด์ผ ํฉ๋๋ค. ์ด๋
> ์ ์ฅ์๊ฐ Slack, X, LinkedIn ๋๋ Discord์์ ๊ณต์ ๋ ๋ ๋ ๋๋ง๋๋ ๊ฒ์
๋๋ค.
---
## ๐ ํฌ๋ ๋ง
- **[at0m-b0mb](https://github.com/at0m-b0mb)**๊ฐ ์ ์ํ์ต๋๋ค.
- Flipper ๋ณด์ ๋๊ตฌ ์ ํ๊ตฐ์ ์ผ๋ถ์
๋๋ค: **[Argus](https://github.com/at0m-b0mb/Argus-FlipperZero)** (Wi-Fi ๋์ธ์ฆ / ์ด๋ธ ํธ์ ๊ฐ์), **[GhostTag](https://github.com/at0m-b0mb/GhostTag-FlipperZero)** (BLE ์ํฐ ์คํ ํน ํํฐ), **[Cerberus](https://github.com/at0m-b0mb/flipper-cerberus)** (Sub-GHz RF ๊ฐ์).
- [Flipper Zero ํ์จ์ด](https://github.com/flipperdevices/flipperzero-firmware) NFC HAL (`furi_hal_nfc` ํ๋ ๊ฐ์ง) + [ufbt](https://github.com/flipperdevices/flipperzero-ufbt)๋ก ๊ตฌ๋๋ฉ๋๋ค.
## ๐ ๋ผ์ด์ ์ค
[MIT](https://github.com/at0m-b0mb/specter-flipperzero/blob/main/LICENSE) ยฉ 2026 at0m-b0mb