サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
ブラックフライデー
qiita.com/kunichiko
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 本記事の目的 弊社 (リプレックス株式会社) の関わっているプロダクトで、ReactNativeを使って作ったアプリがあるのですが、保守工数の削減のためにE2Eテストの自動化にチャレンジしてみることにしました。その際の技術選定の経緯なども含め、メモとして残すために書いています。 単なる殴り書きではなく、これからスマホアプリのE2Eテストの自動化を始めたい方が読む時に参考になる資料としても使えるように心がけて書いていこうとおもいます。 E2Eテストとは E2Eテストとは、 end to end test (エンドツーエンドテスト) の略で
みたところ Raw File Sizeの合計値がちょうど APKファイルのサイズになっているので、おそらく、Raw File Sizeの正しい説明は以下の通りです。 Raw File Size Raw File Size はエンティティ(対象ファイル)がAPKファイル(Zipアーカイブ)内で占めるサイズを表します 以上を踏まえ、さらに詳細を調べます。そもそも beforeも afterも、Unzipped File Sizeはほぼ同一です。にもかかわらず、APKのファイルサイズが倍近いのはなぜでしょうか? その秘密は unzip -v コマンドを実行してみるとわかります。 beforeの方は圧縮率 68%で、3割強くらいのサイズになっていますが、一方で afterの方は圧縮率 0%、つまり、 無圧縮状態でZipファイルにアーカイブされています。 これはなぜなのでしょうか? 何のためにこうい
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? ご好評いただいたGoogle Spreadsheet を簡易 Webサーバーとして動かして、手軽にWebHookを受け取る方法 の具体的な応用例として、iOS の Auto-renewable Subscriptionsの購読ステータスの状態変更を Google Spreadsheetで受け取ってみたので、その顛末をご紹介します。 iOS の Auto-renewable Subscriptionsの購読ステータスの状態変更が、サーバで受信できるようになりました 恥ずかしながらWWDC 2017をちゃんと調べきれていなくて知らなかったの
外部のサービスからの通知を WebHookで受け取ってちょっとした処理をしたいことってたまにありませんか? たとえば、アプリのクラッシュログを解析するFabricの Crashlytics には、新しいクラッシュが発生したり特定の閾値を超えると WebHookで通知してくれる、つまり特定の URL にPOSTを発行してくれる機能があります。 これを上手く使うと、下の図のように「新しいクラッシュが発生したら Backlogなどのチケット管理サービスに自動登録」といったことができそうです。 もちろんCrashlyticsから BacklogのAPIは直接叩けないので、このように WebHookを使ってこちらのサーバを叩いてもらい、そのサーバがあらためて Backlogの APIを使ってチケットを登録する、というよう感じになります。 以下は実際のClashlyticsの管理画面です。WebHoo
はじめに Xcodeのバージョンも 8になり、社内プロジェクトの方も Swift3化を進めているのですが、色々とトラブっています。特に困っているのが Objective-Cと Swiftが混在する環境でのエラーオブジェクト(NSError、Error)の扱いです。 時間がなくてちゃんと体系的にまとめきれていないのですが、自分自身の問題整理と覚書も兼ねて、現状でわかっていることをまとめてみました。 SwiftのErrorと、Objective-Cの NSError 少し前提を話します。 まず、Swiftの世界ではエラーは Error という抽象的な型(プロトコル)で扱います。このプロトコルは Swift2までは ErrorTypeという名前でしたが、Swift3で Error に名称が変更されました。より一般的な名前が与えられたということですので、役割が昇格したと言えます。 一方、Objec
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに 2016年7月までの間に Windows 10に無償アップグレードした方も多いと思いますが、再インストールしたい場合もあると思います。 私の場合は、BootCampパーティションにインストールされた Windows 8.1 があったのでそれを Winsdows 10にしておきました。しかし、後になってやっぱり 「Parallelsの仮想環境に入れておけばよかった」と思い、再インストールを行ったのですが、ライセンス認証がうまくいかず、MSサポートのお世話になりました。 以下、覚書を兼ねて私の体験をメモしておきます。 BootCa
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
RSAの公開鍵暗号や電子署名の仕組みを使ったプログラムを書く必要があり、そのときにいろいろと調べたので、忘れないうちにまとめておきます。 書いているうちに量が多くなってしまったので、幾つかのエントリに分割して投稿します。(まだリンクがないものは執筆中です) 公開鍵暗号と電子署名の基礎知識 これを知らないとそもそも以下のエントリの意味がわからない、という基礎知識を切り出しました。 RSA暗号の全体像 公開鍵暗号や電子署名の具体的な仕様の一つが RSA暗号です。デファクトスタンダードと言っても過言ではありません。 RSAの仕様は膨大で多岐にわたっていて全体像が把握しづらいので、要点をまとめてみました。 OpenSSLコマンドによる公開鍵暗号、電子署名の方法 OpenSSLのコマンドを使って公開鍵暗号や電子署名を行う方法をまとめました。 OpenSSLは RSA暗号を実際に実装したライブラリやコ
CoreDataにおける大量データ更新の問題点 CoreDataはいわゆるO-Rマッパーフレームワークで、Mac/iOSアプリでは使っている方も多いと思います。 DBなどの永続化ストアをオブジェクトとして扱えるのでとても便利なのですが、高機能である代償としてどうしてもパフォーマンス上不利になってしまう点があります。 その代表例が一度に大量のデータを更新する処理、いわゆる「バッチ更新」です。 O-Rマッパーでデータ更新をする場合、通常はまずいったんメモリ上のオブジェクトして具現化し、オブジェクトのプロパティを変化させて、それをもう一度DBに書き戻すことになります。 通常はこれで問題ないのですが、「10,000件のメールすべてに既読フラグをセットする」というような処理を考えると非常に非効率なことが起こります。 SQLであれば、 とするだけで、MAILテーブルのすべての行のREAD列を1に変更す
PKCS #12 個人情報交換ファイルとは 個人情報交換ファイル は PKCS #12 Personal Information Exchange Syntax Standard という規格で定義されたファイルです。 PKCS #12という規格は、英語版Wikipediaによると以下のように説明されています。 See RFC 7292. Defines a file format commonly used to store private keys with accompanying public key certificates, protected with a password-based symmetric key. PFX is a predecessor to PKCS #12. 訳してみます。 RFC 7292を参照。パスワードベースの対象鍵による保護のもと、秘密鍵をそれと
RSAの公開鍵暗号技術を利用するためには、鍵や証明書のファイルを扱う必要があるため、そのファイルフォーマットについて理解しておく必要があります。 実際、いろんな拡張子が登場するので、それぞれの意味を理解していないとすぐにわけがわからなくなります。そんなときのために備忘録をまとめてみました。 ファイルの拡張子の注意点 .DERと .PEMという拡張子は鍵の中身じゃなくて、エンコーディングを表している デジタル暗号化鍵やデジタル証明書はバイナリデータなのですが、MD5のハッシュ値のような単なる 値 ではなく、データ構造をもっています。.DERや .PEMはそのデータ構造をどういうフォーマットでエンコードしているかを表しています。そのため、.DERや.PEMという拡張子からそのファイルが何を表しているのかはわかりません。暗号化鍵の場合もあるし、証明書の場合もあります。 .DER 鍵や証明書をAS
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 電子署名のファイルフォーマット OpenSSLのコマンドを使って電子署名を生成する方法は、OpenSSLコマンドによる公開鍵暗号、電子署名の方法 で解説しました。 そのコマンドで生成された sign.sig というファイルの中身は一体なんなのでしょうか?というのをまとめたのがこのエントリです。 電子署名に関する仕様 RSA暗号の全体像で解説したように、公開鍵暗号に関する仕様は PKCSという規格群にまとめられています。 電子署名のフォーマットも PKCS #1に規定があります。PKCS #1は RFC 3447として公開されているので、
公開鍵暗号をプログラムで扱う方法のまとめシリーズの終盤戦。ようやく実際のプログラム上で公開鍵暗号を使う話に入ります。 対象範囲 暗号化にもいろいろありますが、このシリーズでは、RSAに公開鍵暗号、電子署名だけをターゲットにしています。とはいえ、他の暗号化方式を使いたい方にも有用な情報はあると思います。 基本知識 非対称鍵による暗号や署名についての基本的な概念の理解を持っている必要があります。最低限以下の知識は必要です。 公開鍵とは何か 秘密鍵とは何か 証明書とは何か 公開鍵暗号は共通鍵暗号と比べてどういう特徴があるか 電子署名とは何か ダイジェスト値、ハッシュ値、ダイジェスト関数、ハッシュ関数とは何か 自信のない方は公開鍵暗号をプログラムで扱う方法のまとめシリーズを最初から読んでみてください。 iOSの暗号化フレームワーク iOSでは Security Frameworkというものが用意さ
本エントリは公開鍵暗号をプログラムで扱う方法のまとめの一環で、OpenSSLコマンドを使ってRSAの公開鍵暗号や電子署名を行う方法をまとめています。 知識の前提 公開鍵暗号と電子署名の基礎知識 ある程度の基礎知識があることを前提としていますので、自信のない方は 公開鍵暗号と電子署名の基礎知識 を先にお読みください。 RSA鍵、証明書のファイルフォーマットについて 諸々の操作で鍵や証明書のファイルが出てきますが、それらのファイルのフォーマットについてある程度の理解がある必要があります。自信のない方は RSA鍵、証明書のファイルフォーマットについて を先にお読みください。 環境 OpenSSLがインストールされているコンピュータが必要です。macOSや Linux等の UNIX系コンピュータであればほぼ最初からインストールされているとおもいます。Windowsの場合はデフォルトではインストール
RSA暗号とは 公開鍵暗号と電子署名の基礎知識で解説したように、RSAというのは公開鍵暗号の具体的な仕様です。 RSAという名前は発明者の3人の名前の頭文字からつけられています。歴史的なところはRSA暗号に関するWikipediaのエントリを参照してください。 RSA暗号の仕様 RSA暗号の仕様を管理している人は誰? RSA暗号は1983年にアメリカで特許が取られていて、RSAセキュリティという会社(現在はEMCコーポレーションに買収されている)がその権利を持っていましたが2000年に特許が切れています。 RSAセキュリティ社がRSAの普及を進めていく中で、PKCSという規格群を制定しました。PKCSとは、Public Key Cryptography Standards の略で、公開鍵暗号のやり方やファイルフォーマットなどを規定しています。 なので、基本的にはPKCSを読めばRSA暗号に
とくに、英語の decryption を日本語でなんと呼ぶかは人によってまちまちです。 復号 と呼んでいる人もいるのですが、復号は decode の訳語として使いたいので、このエントリでは 平文化 を使います。 公開鍵暗号とは 玄関の鍵は閉めるときも開けるときも同じ鍵を使います。金庫の鍵も普通はそうです。では 金庫に貴重品を詰めて送ってもらう時はどうでしょう? 金庫を閉める鍵と開ける鍵が同じだと、金庫にものを詰めてもらう相手にその鍵を渡す必要があります。その鍵を郵送で送ろうとしたら、途中で誰かに見られて複製を作られてしまうかもしれません。大事なものを送るために鍵をかけようとしているのに、同じ労力をかけて鍵を受け渡さなければいけないとなると本末転倒です。 これは、暗号通信でも同じことが言えます。 そこで、暗号通信において 閉めることしかできない鍵 と 開けることしかできない鍵 のペアを使うこ
このページを最初にブックマークしてみませんか?
『@kunichikoのマイページ - Qiita』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く