キーロガーの最短コード


8

さて、私は最短のキーロガーチャレンジを提案します。「キーロガーの質問は許可されていますか?」で紳士が説明したように、この課題をPPCGに適用するには、厳しい規則を課す必要があります。

  1. キーロガーは、Windows、Linux、またはMac OSXで実行する必要があります(任意のプログラミング言語を歓迎します)。
  2. 実行時に、「コンソールにログインするか、GUIを使用して」というメッセージを表示する必要があります。
  3. このチャレンジのログインに関連するキーは、文字(大文字と小文字は区別されません)と数字です。その他の記号、コントロールキー、空白などはすべてオプションであり、無視してかまいません。
  4. ランタイム中に発生するすべての関連するキープレス(アプリケーションがフォーカスされていない場合でも)は、ログファイルに保存する必要があります。ログファイルは、テキストエディター(難解なものでも)を使用して読み取りおよび検証できます。そのテキストエディタ)。

誰もがそれに賛成ですか?Whatdayatink?


1
「4. [...]ログファイルに保存」とはどのような形式ですか?
— Leaky Nun

質問を更新して目的の形式を指定しました。
— MathuSum Mut

私のプログラムのREPLに入力されたものを簡単にログに記録できますが、ブラウザや他のアプリケーションに何かを入力しても十分ですか、それとも機能しますか?
— コアダンプ

はい、「アプリケーションがフォーカスされていなくても」、何でも機能するはずです。
— MathuSum Mut 2016

1
Macで実行するプログラム(AppleScript)を作成できますか?
— Downgoat

回答:


10

バッシュ、90バイト

これはUbuntuで動作し、が必要evtestです。キーボードであるデバイスを選択し、そのevtest出力をファイルに保存しますl。よりフォーマットされた出力が必要な場合は、より多くのバイトでそれを行うことができます。

echo I\'m gonna log you
sudo evtest /dev/input/by-path/`ls /dev/input/by-path/|grep kbd`>l

1
あなたは尊敬に値します。
— MathuSum Mut

5

AutoHotKey、1171バイト

はい、それはめちゃくちゃ大きいですが、仕事をします。

#NoEnv ;
SendMode Input ;
ToolTip, I'm gonna log you!

~a::fileappend, a, keylog.txt
~b::fileappend, b, keylog.txt
~c::fileappend, c, keylog.txt
~d::fileappend, d, keylog.txt
~e::fileappend, e, keylog.txt
~f::fileappend, f, keylog.txt
~g::fileappend, g, keylog.txt
~h::fileappend, h, keylog.txt
~i::fileappend, i, keylog.txt
~j::fileappend, j, keylog.txt
~k::fileappend, k, keylog.txt
~l::fileappend, l, keylog.txt
~m::fileappend, m, keylog.txt
~n::fileappend, n, keylog.txt
~o::fileappend, o, keylog.txt
~p::fileappend, p, keylog.txt
~q::fileappend, q, keylog.txt
~r::fileappend, r, keylog.txt
~s::fileappend, s, keylog.txt
~t::fileappend, t, keylog.txt
~u::fileappend, u, keylog.txt
~v::fileappend, v, keylog.txt
~w::fileappend, w, keylog.txt
~x::fileappend, x, keylog.txt
~y::fileappend, y, keylog.txt
~z::fileappend, z, keylog.txt
~1::fileappend, 1, keylog.txt
~2::fileappend, 2, keylog.txt
~3::fileappend, 3, keylog.txt
~4::fileappend, 4, keylog.txt
~5::fileappend, 5, keylog.txt
~6::fileappend, 6, keylog.txt
~7::fileappend, 7, keylog.txt
~8::fileappend, 8, keylog.txt
~9::fileappend, 9, keylog.txt
~0::fileappend, 0, keylog.txt

クリエイティブで、ホットキーモニターを使用することに
— 気づかなかった

ログファイルの名前は1文字で、キーごとに 9バイト節約できます。forループ内のすべてのキーを反復処理できるため、多くのバイトを節約できます。現状では、この回答が私たちの深刻な候補者の基準を満たしているとは確信していません。
— Mego

ヘルプセンターのルールによると、すべての解決策は、使用されている基準に真剣に取り組む必要があります。コードゴルフコンテストの場合、これは、すべてのエントリがコードをゴルフする試みを示す必要があることを意味します。
— Dennis
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.