home ホーム search 検索 -  login ログイン  | help ヘルプ

find 検索

431 - 440 / 1320    [|<]  [|<]  [<]  41  42  43  44  45  46  47  48  49  50   [>]  [>|][>|]
タイトル/名前 更新者 更新日
技術/Android/PermissionExamples msakamoto-sf 2011-11-25 19:21:36
日記/2011/11/22/伊豆・大瀬崎 msakamoto-sf 2011-11-24 11:53:33
日記/2011/11/13/AVTokyo2011参加レポート msakamoto-sf 2011-11-13 22:48:57
日記/2011/11/06/すごいどうでもいいところで嵌ってしまった。 msakamoto-sf 2011-11-06 21:02:38
技術/Security/GnuPG msakamoto-sf 2011-11-06 12:16:52
日記/2011/11/05/魚の缶詰が意外と使いやすい msakamoto-sf 2011-11-05 10:28:36
技術/HTTP/JMeter負荷テストメモ msakamoto-sf 2011-10-30 16:42:53
日記/2011/10/30/MacBookAir購入 msakamoto-sf 2011-10-30 00:26:20
日記/2011/10/23/Android4.0(IceCreamSandwich)の画面キャプチャ機能 msakamoto-sf 2011-10-23 17:16:03
技術/Android/FileAndDirPermissions msakamoto-sf 2011-10-16 22:02:08
ソート項目 / ソート順     1ページ 件ずつ表示

技術/Android/PermissionExamples  

所有者: msakamoto-sf    作成日: 2011-07-10 18:19:33
カテゴリ: Android 

AndroidManifest.xmlでの"<permission>"と"android:permission"属性の使用例+メモ。

サンプルコード

bitbucketにてMercurialで公開:

  • https://bitbucket.org/msakamoto_sf/androidpermissionsamples
    • "PermissionTest1" : Activity, BroadcastReceiver, Service, ContentProviderを用意しているアプリ。
    • "PermissionTest2" : PermissionTest1の各コンポーネントを呼び出すアプリ。AndroidManifest.xmlで必要な"<uses-permission>"を定義済み。PermissionTest1と同じ証明書で署名する。
    • "PermissionTest3" : PermissionTest2と内容は同じだが、PermissionTest1,2と異なる証明書で署名する。

結果

詳細:

全体傾向:

  1. android:exported="false"の非公開は呼べない。
  2. android:exported省略時は、IntentFilterが無ければ非公開、IntenFilterが有れば公開扱い。
    1. ReceiverについてはIntentFilter有りのexported無しが非公開扱いになっており、これだけ予想と異なっていた。
  3. Permissionがある場合は、上記の判断 AND Permissionのレベルに応じた判定となる。
    1. PermissionTest2ではSignatureレベルの公開扱いは呼べる、PermissionTest3ではSignatureレベルは全て呼べない。

ContentProviderについて:

  1. API Level 8 ではexported属性の指定が無視され、公開扱いになってしまう。

参考資料

ContentProviderとpermissionの参考資料:



プレーンテキスト形式でダウンロード
現在のバージョン : 6
更新者: msakamoto-sf
更新日: 2011-11-25 19:21:36
md5:acb9a5904b1795c87dd0c79f5d631439
sha1:c0aa97287023afbb22c8802ef87082c036567292

日記/2011/11/22/伊豆・大瀬崎  

所有者: msakamoto-sf    作成日: 2011-11-24 11:47:10
カテゴリ: ダイビング 

11/20-22と伊豆・大瀬崎にダイビングしてきました。
連休前半ということで、特に21,22はガイドとマンツーマンでゆっくりとダイビングを楽しめました。
20日は暖かかったのですが、21, 22と気温が下がって冷え込み、外気(18度とか)より水温の方が高い(20度)状況でした。
また、海況が良かったため22日は外海に潜ることも出来ました。外海は水深15-18m位から水温が17度まで下がりましたが、上層とは別の水が流れていたようで透明度も良好でした。

ということで、湾内と外海の写真をGoogle+にUPしてみました。今後はこちらで写真とかUPしていければと思います。

前回:日記/2011/01/22/伊豆・大瀬崎


プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2011-11-24 11:53:33
md5:e6a2b4f7c255f9e50de7e4fb70dfc426
sha1:a956db9a5b1012bf08680360804d7f590f11c064

日記/2011/11/13/AVTokyo2011参加レポート  

所有者: msakamoto-sf    作成日: 2011-11-13 11:34:55
カテゴリ: セキュリティ 

AVTokyo2011に参加してきました。Androidのセキュリティとか何かネタが転がってないかなーとか、英語のセッション聴いてみて理解できるかな、とかその辺りが狙い目。

セッションが並行していたため取捨選択しなければならなかったのだけれど、とりあえず英語セッションを聴いてみたいのと、最近Androidセキュリティ界隈で露出が多くなってるKDDI関連の人のセッションを聴いてみたかったのと、本業とかなり関係が深いSQLインジェクションのセッションということでずっと2Fに居ました。最後3FでWeb開発とかのトークイベントを拝聴して、帰宅。

  • カードのPINやEMV POS端末などのskimmingの話題:
    • 英語ヒアリング能力の無さを痛感。プレゼンの文章を(日本語翻訳も載せてくれていたので)追うので精一杯。
    • 磁気カードとICカードから情報を抜き取る手法。EMVというのは磁気カードからICカードへの切り替えをスムーズにするため、ICカードの読取やプロトコルを定めた読取端末の統一規格。
    • 磁気カードで読み取るかICカードを利用するかの切り替え部分や、CVM(Cardholder Verification Method)の優先順位の改ざんなどでPIN番号を平文で取得できる場合がある。
    • CVV(Card Verification Value) 数字3桁は弱いのでは?iCVVへの切り替え。
    • POS端末を入れ替えるとなると、数時間の間業務が停止する。オランダはそれでも決行した。
    • 参考:この辺予習しておけばもう少し聞き取れたかもしれない。"magstripe"とか最初分からなかった。
  • 「サイバー・クライム」の内側
    • FBIへのDoSが100Gbpsってどうやったら実現できたんだ・・・。
    • DoSを使った脅迫に対して、一度お金を払ってしまうと二度目、三度目と狙われる。
    • 国境を跨ぐ犯罪になるため、調査に手間がかかるし実行犯に対する刑罰が国によりバラバラだったりする。
  • Androidフォンのセキュリティ
    • KDDIではAPIの呼び出しをHOOKして、実際にcallされたときに利用者にpopupして許可するか確認できるようにAndroidを改造して検証中。
    • au one Marketでは開発者向けのサービスとして3,150円でAndroidアプリの検査を提供している。permissionや実行時のログなどを調査し、passすればMarket上で検査済みのマークが表示されるらしい。
    • 但し著作権法に抵触するリスクがあるため逆コンパイルまではしていないようだ。
    • WebViewでは独自にJavaScriptの関数を追加できるということもあり、独自に追加した関数を悪意のあるWebサイト上で呼ばれてしまう可能性があるとのこと。
      • 但し、例えばREAD_PHONE_STATEが必要な機能をJavaScriptから呼べるようにした場合、WebViewを組み込んだアプリであればどれでも利用できるわけではなく、その機能をJavaScriptにBINDしたアプリからのみでなおかつ、そのアプリ自身にも相応のManifestパーミッションが必要となる。なのでアプリのパーミッションを確認するのがまず重要。
    • Manifestパーミッションは開発者が独自に定義することもできるが、GoogleのAndroidMarketでは独自定義パーミッションは表示されない?らしい。au one Marketでは表示するようにしているが、表示内容にわかりづらさがあったとか。(「未知のパーミッション」等と表示されていた?)
    • 企業向けにカスタマイズされた、より細かい制御が可能なOSを開発中。rootを取られたとしても被害を最小限にできるようにしたり。"3LM"でぐぐってみてください、とのこと。
    • これかな?
  • SQLインジェクションの過去と未来
    • MySQLメインの話。"SQL"は"シークェル"と発音すると目にしたことがあるが、実際にその発音をナマで聴いたのは初めて。
    • column名の重複でエラーになるというテクニックでplugin_dirとdatadirの位置を割り出し、
    • "SELECT INTO DUMPFILE"で7KBほどのユーザ関数を格納したDLLを書きだして、
    • "SELECT INTO DUMPFILE"で上で投入したユーザ関数をcallするTrigger用のデータファイルを書きだして、
    • 通常のSQLでtriggerを発動させる、という合わせ技。デモされたのはWindowsのシャットダウンコマンド。

そのあとは3Fで「徹底討論! デベロッパとブラウザの果てしなき戦い」を聴く。ほしくず氏が紳士すぎて惚れかけた。

Androidフォンのセキュリティについてスピーカーの川端氏にもう少し話を聴いてみたかったのだけれど、別件の用事が入ってしまいタイムアップで18:00頃撤退。

しかしセキュリティ業界って開発系よりは世界が狭いと言うか・・・2Fでオープニング待ってる間も、そこかしこで知り合い同士の挨拶や近況の共有、誰が辞めてどこに移ったとかそういう話ばかりが聞こえてきた。

あとtogetterの中で、「話しかけるの難しい、ボッチで寂しいよ」みたいな投稿がところどころ見かけられましたけど、ぼっちで参加するカンファレンスというのはいわば地引網みたいなもので、とりあえずぐわーっと周りの情景、雰囲気、雑音も含めたあらゆる会話やひそひそ声を頭の中に流しこんで、その中から1つか2つ、「あ、これ気になる」と思えるネタなり人物を見つけることが出来れば大成功レベル。その後深堀りしてけばいいんじゃないかな。別にカンファレンスに参加したからといって、みんながみんな誰とでも話しかけて盛り上がらなくちゃいけない、っていうルールが強制されてるわけじゃないので、ぼっち参加ならぼっち参加なりの「元の取り方」をしてけば良いように思う。

あと、スクリーンに映し出されてるプレゼンの資料をデジカメで撮影している人たちが多くて、新鮮というか「あ、そーゆーやり方があったのか」と今更ながら感心。自分、ずっとノートに手書きでメモしたりしてた・・・。


プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2011-11-13 22:48:57
md5:247782cb2bfa7c329488ed83ac5ccac3
sha1:5546fffe90bbae5f46f4656bc975a8b1ce194cd6

日記/2011/11/06/すごいどうでもいいところで嵌ってしまった。  

所有者: msakamoto-sf    作成日: 2011-11-06 20:59:15
カテゴリ:

ADT Pluginが、
WindowsのEclipse→CRLFでR.javaを自動生成
MacOSXのEclipse→LFでR.javavを自動生成

自動生成しない、src以下のJavaソースはワークスペース設定などで統一できるが、自動生成のソースがどうにもならない。んー、該当プロジェクトとかリポジトリだけ改行コードを自動変換できれば良いのかもだけれど、Mercurialでどうしたものか、Subversionのときどうしようか、とか考えだすとめんどくさそう・・・。

今のところメインの開発がWin上で、Macからcommitする予定は今のところないけど今後どうなるか分からないし。

どうしよう。


プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2011-11-06 21:02:38
md5:5215a78696fddb7e7db51a4afe3f134a
sha1:800a8ab7f1083693005bd32d7ffbc7ff2a26ec5b

技術/Security/GnuPG  

所有者: msakamoto-sf    作成日: 2011-10-30 18:59:41
カテゴリ: セキュリティ 

GnuPGを使ってみたメモです。

少し古いですが参考にしました:

鍵の生成

gpg --gen-key

暗号化と復号化

暗号化 + 署名生成(受け取る相手が"UID"を想定):

gpg -se -r "UID" -o encrypted.dat plain.txt

「"UID"」の部分は、鍵を生成した時の"Real name", "Email address", "Comment"のどれか or フル指定。
例:

Real name: Foo Bar
Email address: foobar@example.com
Comment: mycomment
You selected this USER-ID:
    "Foo Bar (mycomment) <foobar@example.com>"

になるので、

"Foo Bar"

とか

"mycomment"

とか、厳密に一致させたい時は

"=Foo Bar (mycomment) <foobar@example.com>"

みたいに"UID"を指定できる。スペースが入って無ければダブルクォートで囲まなくとも平気かも。
UIDについての正確なドキュメントは下記参照:

復号化(署名検証は自動処理):

gpg encrypted.dat
gpg -o plain.txt encrypted.dat

鍵のインポート・エクスポート

PC1で生成した自分の公開鍵・秘密鍵をPC2に複製する:

公開鍵・秘密鍵のエキスポート

gpg -o public.key --export "UID"
gpg -o secret.key --export-secret-key "UID"
gpg --export-ownertrust > ownertrust.dat

公開鍵・秘密鍵のインポート

gpg --import public.key
gpg --import --allow-secret-key-import secret.key
gpg --import-ownertrust ownertrust.dat


プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2011-11-06 12:16:52
md5:b0ce625a0331b3a4448982d5044644fc
sha1:00da9cf76c1a1dc8ec470095a241ded053c8671c

日記/2011/11/05/魚の缶詰が意外と使いやすい  

所有者: msakamoto-sf    作成日: 2011-11-05 10:20:16
カテゴリ:

去年の冬、よくコンビニやスーパーで鯖の味噌煮の缶詰を見かけた。
鯖以外にもさんまや鯖を加熱調理した水煮や、味噌や醤油などで煮込んで味付けした缶詰がある。

ということで、試しにさんまと鯖の水煮の缶詰を買ってきた。で、既に加熱調理済みでかなり柔らかくなっててお箸で簡単にほぐれてしまう。
ものは試しと、適当にフライパンでオリーブオイルで温めてからバジルソースで味付けしてみたら、ベストマッチした。

和食はもとより、イタリア料理系と相性が良さそう。
安いし、生ゴミも出ないし、意外と便利でした。


プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2011-11-05 10:28:36
md5:9407370861fc1276d44cbd4326f8ab3d
sha1:d743316d2f65a4c2a14d8f4a7e2b640ab4534c7c

技術/HTTP/JMeter負荷テストメモ  

所有者: msakamoto-sf    作成日: 2011-10-30 16:32:42
カテゴリ: HTTP ネットワーク 

Apache JMeter の使い方メモ。2007-2008頃にまとめたメモなので、内容的に古いかもしれません。
※Javaアプリケーションなので、事前にJavaの実行環境をインストールしPATHを通しておく。JREだけでOK。JDK(SDK)までは必要ない。

(全て表示する)
プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2011-10-30 16:42:53
md5:e69315cb1dfbacf4f98e8c9cb3565fa8
sha1:67e8e984204e155a43eaac82181174852b546394

日記/2011/10/30/MacBookAir購入  

所有者: msakamoto-sf    作成日: 2011-10-30 00:22:15
カテゴリ:

やばい。
惚れそう。

ruby, python, perlがデフォルトで使える。初期状態でTerminalからBashが使える。
Xcode入れてJava入れてEclipse入れて、
homebrew入れたらあとはwget, neon, subversion, coreutils, nmap入れて、
気づいたらMavenもAntも入ってたので、あとはEclipseにSubversive入れてm2eclipse入れて、
あとMercurial入れて・・・。あっとゆーま。

これが普通のクライアント、コンシューマ向けのPCで出来てしまうというのが感動もの。


プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2011-10-30 00:26:20
md5:46f79fdf183c5100c41fe7bed8cd0ffc
sha1:b2a8cd77f7e8a8780f8675c3ed9c63bff6ebab00

日記/2011/10/23/Android4.0(IceCreamSandwich)の画面キャプチャ機能  

所有者: msakamoto-sf    作成日: 2011-10-23 16:04:42
カテゴリ: Android 

IceCreamSandwichの新機能が公開され、続いてSDKのr14も提供が開始されました。
個人的に気になってるのが、ようやくスクリーンショット機能がAndroidの標準で提供されるようになったという点で、VolDown + Powerキーで画面キャプチャ出来るみたいです。
/system/bin/screenshot, screencap というコマンドが用意されていて、そちらからもキャプチャ出来るとのこと。

ということで実際にr14でAndroid 4.0のAVD作って試して見ました。

# ls -l /system/bin/screencap
ls -l /system/bin/screencap
-rwxr-xr-x root     shell        5756 2011-10-12 21:09 screencap
# ls -l /system/bin/screenshot
ls -l /system/bin/screenshot
-rwxr-xr-x root     shell       34820 2011-10-12 21:09 screenshot
# screenshot
screenshot
usage: screenshot [-s soundfile] filename.png
   -s: play a sound effect to signal success
   -i: autoincrement to avoid overwriting filename.png
# screencap -h
screencap -h
usage: screencap [-hp] [FILENAME]
   -h: this message
   -p: save the file as a png.
If FILENAME ends with .png it will be saved as a png.
If FILENAME is not given, the results will be printed to stdout.
# screencap -p /mnt/sdcard/test.png
screencap -p /mnt/sdcard/test.png
# screenshot /mnt/sdcard/test2.png
screenshot /mnt/sdcard/test2.png
libpng warning: Invalid color type/bit depth combination in IHDR
libpng error: Invalid IHDR data

screencapでは上手く撮影できましたが、screenshotではサイズが0バイトになってしまい、失敗したようです。
screencapで撮影したtest.pngファイルですがWindowsのプレビュー機能では表示できませんでした。ViXでは表示できたんですが・・・ファイル形式で何か細かい違いがあるのかもしれません。

実装を見てみようと思ったんですが、まだICSのソースコードは公開されていませんでした。
一応部分的にはダウンロードリンクがあるのですが。

一応ここからDLできるソースも見てみたのですが、該当するっぽいソースは見当たりませんでした。milkodeまで導入したのですけど・・・。

通常アプリから起動するときにpermissionが必要なのかそうでないかが気になります。って、作ればいいのか・・・。


プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2011-10-23 17:16:03
md5:14669c5dcbc9814b6fa25248394779fd
sha1:370607f4dd0ba14fa5314f61a22e17378bed3f6b

技術/Android/FileAndDirPermissions  

所有者: msakamoto-sf    作成日: 2011-10-16 21:46:21
カテゴリ: Android 

Contextクラスから取得出来るディレクトリのパスや、Contextクラス経由で作成できるファイルオブジェクトについてそのUNIXファイル上でのパーミッション設定を調べて見ました。

  • ファイル(getFilesDir(), getDir(), openFileOutput())
  • SharedPreferences
  • データベース(openOrCreateDatabase(), SQLiteOpenHelper経由)
  • 外部ストレージ

サンプルアプリケーション:StorageExercise

MODE_WORLD_READABLE/WRITABLEに注意すべきケースとしては、結論としては以下の3種類になります。

  • Context.openFileOutput()
  • Context.getSharedPreferences()
  • Context.openOrCreateDatabase()

Context.getDir()もmodeを指定できますが、こちらは心配要りません。

(全て表示する)
プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2011-10-16 22:02:08
md5:bb0d35fb841cbbfc9de318e6851d2fd5
sha1:3141cae8089bf9ce0a71144a137dbbcabd80b58f