Windows だけだが、拙作の Go製 Felica ライブラリ pasori に read without encryption
と write without encryption
コマンドを足した。
参考にした記事/サイト一覧
[PASMO] FeliCa から情報を吸い出してみる - FeliCaの仕様編 [Android][Kotlin] - Qiita
FeliCa Liteの片側認証 - hiro99ma site
使い方
基本的な使い方は cmd/dump
を見てもらえばいい。今のところ、FelicaWriteWithoutEncryption
に渡す書き込み値は最初の16バイトをユーザーブロック0に書くのみ。
MAC付読み込み/書き込みは今のところサポートしてない。
package main import ( "fmt" "github.com/bamchoh/pasori" ) func dump_buffer(buf []byte) string { str := "" for _, b := range buf { str += fmt.Sprintf("%02X", b) } return str } var ( VID uint16 = 0x054C // SONY PID uint16 = 0x06C3 // RC-S380 ) func main() { var err error fmt.Println("Please touch FeliCa") psr, err := pasori.InitPasori() if err != nil { panic(err) } defer psr.Release() err = psr.FelicaWriteWithoutEncryption([]byte{16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1}) if err != nil { panic(err) } b, err := psr.FelicaReadWithoutEncryption() if err != nil { panic(err) } fmt.Println(b) }