usuyuki

usuyuki

ATOM Matrixのドライバーが壊れてる!!

ATOM Matrixのドライバーが壊れてる!!

M5Stack社のATOM Matrixを購入したのですが、動かないんです。 目次 * 1 結論 * 1.1 FTDI driverのインストールが必要! * 1.2 ATOM Matrixのドキュメントにも書いてあった。 * 1.3 一番の盲点は同じM5シリーズでも一部はドライバー違うということ 結論 下記の通り書かれていますが、ドライバーのインストール、しかもM5Stackシリーズとは違うドライバが必要みたいでした。 Note: M5StickC /M5StickC PLUS / M5StickT / ATOM Matrix / ATOM Lite support can be used without driver, users can skip this driver installation step. UnitV/M5StickV/M5StickC/ATOM may not work
1 min read
2410円で宇都宮から新潟を経由して宇都宮に行ったお話
青春18きっぷ

2410円で宇都宮から新潟を経由して宇都宮に行ったお話

目次 * 1 2021年7月24日 * 2 概要 * 3 全体の旅程(乗り換えなど) * 4 沿線の見どころ * 4.1 会津若松観光(80分程度) * 4.2 新潟観光(25分程度) * 4.3 長岡観光(70分程度) * 4.4 清水トンネル(国境の長いトンネルを抜けると雪国であった) * 5 感想 2021年7月24日 大学生の私にとって期末試験直前でした。 私は悩んでいました。試験勉強に集中できないことに。 市立図書館は混んでいるし、大学の図書館は土日空いていないし、カフェで長時間も申し訳ないし…… あれ、列車内で勉強すれば良くないかい? 勉強場所を確保したい、日帰りしたい、お金も抑えたい、非日常感も味わいたい、でも単純な移動は嫌だ これをすべて満たす旅がこちらになります。 概要 宇都宮線→東北本線→磐越西線→信越本線→上越線→両毛線→
5 min read
mroonga(MySQLで高速日本語全文検索)を導入してみた

mroonga(MySQLで高速日本語全文検索)を導入してみた

目次 * 1 導入経緯 * 2 結果 * 2.1 同一単語についてのクエリ時間(laravel) * 2.2 WordPressの方(両者トップページのみ) 導入経緯 mroongaというMySQL用のストレージエンジンがあります。かどで日記という独自サービスで日本語検索を使うにあたって、早くなるのか試してみました。環境はkusanagiです。 https://mroonga.org/ja/ なんとkusanagiだと kusanagi addon install mroonga で終わりです。衝撃の簡単さです…… Laravelのeloqunetで10単語(同じ単語だとキャッシュ効いて差がなくなるため)LIKE検索しました。 Laravel8,でEloquentを使用してSQLを生成 検索はwhere()->orderby()->take()->get()で、LIKE検索した結果を日付新しい順に最大200まで取ってくる処理です。 計測は  \DB::enableQueryLog();と
2 min read
さくらVPSのKusanagiでLaravelアプリを公開する手順【備忘録】

さくらVPSのKusanagiでLaravelアプリを公開する手順【備忘録】

目次 * 1 前提条件 * 2 プロビジョニングする * 3 コードをサーバーに送り込んで設定する * 3.1 git cloneとDocumentRoot削除 * 3.2 .env作成 * 3.3 権限周り * 3.4 composer installする * 3.5 keyの生成 * 3.6 マイグレーションする * 4 Nginxの設定を書き換える * 5 Let's encrypt のrootも変える * 6 再起動 * 7 コードを更新した時(GitHub) 前提条件 実行日:2021年6月 環境:kusanagi(最新),Nginx,さくらVPS Laravel:8.
2 min read
マルコフ連鎖モンテカルロ法周りを理解したい【備忘録】

マルコフ連鎖モンテカルロ法周りを理解したい【備忘録】

マルコフ連鎖モンテカルロ法,通称MCMCが授業で出てきました。なんかすごそうなんだけど、イマイチ分からない… 目次 * 1 そもそもベイズ推定 * 1.1 度数分布から理論分布へ * 1.2 理論分布 * 1.2.1 正規分布 * 1.2.2 一様分布 * 1.3 データだけでなく、母数も分布するという考え * 1.4 ベイズの定理 * 2 マルコフ連鎖モンテカルロ法(MCMC法) * 2.1 マルコフ連鎖 * 2.2 モンテカルロ法 * 3 事後分布の要約 * 3.1 点推定 * 3.1.1 平均値「EAP推定量」 * 3.2 区間推定
5 min read
Reactの用語が毎度こんがらがる【備忘録】

Reactの用語が毎度こんがらがる【備忘録】

Reactって難しくないですか…… 目次 * 1 DOM * 1.1 エレメント * 1.2 ノード * 2 関数コンポーネント * 2.1 属性・Props * 3 クラスコンポーネント * 3.1 renderメソッド * 3.2 constructorメソッド * 3.3 属性・Props * 3.4 子エレメント * 4 クラスで使う値の保管 * 4.1 プロパティ * 4.2 属性・Props * 4.3 ステート * 5 ステート * 5.1 値の設定と呼び出し * 5.2
3 min read
セキュリティ週間7日目【備忘録】5/23

セキュリティ週間7日目【備忘録】5/23

目次 * 1 ひとこと感想 * 2 今日学んだこと * 2.1 ディレクトリ・トラバーサル * 2.2 ディレクトリ・リスティング * 2.3 OSコマンド・インジェクション ひとこと感想 1週間経ちました。 今日学んだこと ディレクトリ・トラバーサル 意図しないファイルを操作される脆弱性。ファイル名を変数で指定とかするタイプで起こる。 他にもエンコードの違いでtxtを読み込ませるとしつつphpを読み込ませるなんていうんルバイトの方法もある 例えば…/etcの中を操作されたり。←「../」を使われる。 →ファイル名を指定できないようにする!!!!ex番号、固定、など →ディレクトリは除外!(「../」とか。 ディレクトリ・リスティング PHPとかでファイルの一覧でてくるやつ。単純だが、かつての情報漏洩はこのパターンが多かったらしい。 →秘密なデータは公開ディレクトリに置かない! OSコマンド・インジェクション プログラミング言語の多く→OSコマンドを呼び
1 min read
Drupal9で繰り返しフィールド(The Repeater Field)を使う!

Drupal9で繰り返しフィールド(The Repeater Field)を使う!

WordPressのACFで作るタクソノミーのようなものがDrupalには標準でついています。 しかし! WordPresのACFで使われる繰り返しフィールド(The Repeater Field)が見当たらないんです!! ずっと見つからず苦戦していたのですが、遂に方法を見つけましたのでご紹介します!!!! 目次 * 1 解決策 * 1.1 Paragraphsモジュール+デフォルトの機能を使う * 1.1.1 インストール * 1.1.2 Paragraph typeの作成 * 1.1.3 繰り返しフィールドの作成 * 1.1.4 コンテンツの作成ページに行く * 2 参考までに * 2.1 単一の種類(画像だけとか)の繰り返しフィールドはデフォルトでできる * 2.1.1 例:画像の繰り返しフィールド的なもの * 2.2 繰り返しフィールドができるモジュール→見つからない * 2.
3 min read
セキュリティ週間6日目【備忘録】5/22

セキュリティ週間6日目【備忘録】5/22

目次 * 1 ひとこと感想 * 2 今日学んだこと * 2.1 クッキーの使い所 * 2.2 クッキーのセキュア属性 * 2.3 メールヘッダ・インジェクション ひとこと感想 今日学んだこと クッキーの使い所 クッキーは書き換えられる! IDとか入れちゃダメ。 通常はセッション変数を。 クッキーはサーバーをまたがったり、セッションを超えて使う必要があるときのみ使う!ex:ログインしたままにするとか クッキーのセキュア属性 Secure属性つけることで盗聴を防ぐ。←HTTPとS混在だと事故る できるだけSecure属性つける!! そのためにサイト全体をHTTPSにする! HTTP含んでしまうサイトはトークンで対策! メールヘッダ・インジェクション HTTPヘッダのときと同じで、改行によって起こるやつ。 正規のメールアドレスから、ウイルス添付のメールや、文章宛先が改変されたものが迷惑メールに引っかからず送れてしまう。 →これもメール機構を自作するんじゃなくて、ライブラ
1 min read
セキュリティ週間5日目【備忘録】5/21

セキュリティ週間5日目【備忘録】5/21

目次 * 1 ひとこと感想 * 2 今日学んだこと * 2.1 オープンリダイレクト(リダイレクト処理での脆弱性) * 2.2 HTTPヘッダ・インジェクション ひとこと感想 今日学んだこと オープンリダイレクト(リダイレクト処理での脆弱性) 任意のドメインにリダイレクトできる脆弱性のこと。 ログインの遷移で別サイトを経由してログインとかされると気づかない。 URLに含ませるのが問題あり→番号にしたり、パラーメータで渡さず固定したり、リダイレクト先のドメインチェックしたりで防止できる! 「外部のページ開きます」的なクッションページが存在するのはそのためなんですね。 HTTPヘッダ・インジェクション レスポンスヘッダで改行を許容していると起こる。HTTPヘッダを自分で作らないほうがいい! 改行コードの解釈でHTTPヘッダの情報を上書き(厳密には複数あったら下の方を読む性質を利用)できる クッキー作ったり、JS作ったり、リダイレクトしたりできる 外部からのパラメータをHTTPレスポンスヘッダで出
1 min read
セキュリティ週間4日目【備忘録】5/20

セキュリティ週間4日目【備忘録】5/20

目次 * 1 ひとこと感想 * 2 今日学んだこと * 2.1 クリックジャッキング * 2.2 セッションハイジャック・固定化 ひとこと感想 メールのリンク開くだけなら大丈夫でしょ。とか甘い認識でいました。アクセスするだけで色々情報抜かれる可能性もあることを知りました。 今日学んだこと クリックジャッキング CSRFに似てる。irfameとかcss使ったり、偽のボタンを利用者に押させるやつ。 これで掲示板に問題ある書き込みを他者にさせることができるというもの。Twitterなどは対策されている。 よく考えられているなと…もはや感服する世界です…… そしてこれはバグとかではないので、全てのサイトに当てはまります。 →対策は「X-Frame-Options」! セッションハイジャック・固定化 セッション成りすましされてもパスワードはわからない→重要なページはパスワード要求する方式はそのため!(←GitHubとかでもあるやつ!) 推測されにくいセッション作るために言語に頼る!自分で作らない!
1 min read
セキュリティ週間3日目【備忘録】5/19

セキュリティ週間3日目【備忘録】5/19

目次 * 1 一言感想 * 2 今日学んだこと * 2.1 1.CSRF(クロスサイトリクエストフォージェリ) 一言感想 フレームワークでやったこととセキュリティの知識が結びつきました。 今日学んだこと 1.CSRF(クロスサイトリクエストフォージェリ) Laravelのbladeだと@csrfするやつですね。 手法としてはXSSとすごく似てる気がします。 怪しいサイトにはアクセスしないが鉄則ですね…どこにiframeが仕込まれているか、気が抜けません… フォームのhiddenやセッションだけじゃなくて、画像アップロードの箇所からでも仕組まれる可能性あり。 なにより、利用者側が踏み台にされて、その人のIPとしてログが残るのが厄介ですね…実際にIPアドレスで誤認逮捕があったみたいです。 対策必要なのは一部のページでいい。他のサイトから実行されちゃダメなところのみ。(最後の購入とか…) →本物のサイトでトークンとか要求する←LaravelBladeの@csrfはこれだったのか……!
1 min read
GUIでGit+GitHub触るための環境構築

GUIでGit+GitHub触るための環境構築

目次 * 1 事前環境 * 2 GitHubアカウントの作成 * 3 GitHubDesktopのダウンロード * 4 Gitが使える環境を整備 * 5 VSCodeにGithubの拡張機能をインストール * 5.1 Git History * 5.2 GitLens * 5.3 Git Graph 事前環境 下記の環境を前提に進めていきます。 とりあえずHTML&CSS&JSを触るための環境構築 GitHubアカウントの作成 https://github.co.jp/ こちらからアクセスしまして、サインアップを押します。 ここからは基本的に全て英語です。 ページの指示に従ってアカウントを作成してください。 GitHubDesktopのダウンロード GitHubをGUIに操作するためのソフトウェアです。本来ならgit pullとかコマンド操作しなきゃいけないんですが、それをせずにgitを扱うことができます。 https:/
3 min read

セキュリティ週間2日目【備忘録】5/18

目次 * 1 ひとこと感想 * 2 ワクチン予約サイトの一件 * 3 今日学んだこと * 3.1 1.XSS応用 * 3.2 2.SQLインジェクション ひとこと感想 本業(大学とバイト)であまり時間を取れませんでした。とにかく続けることを目標にします。 ワクチン予約サイトの一件 Torでアクセスできるとか、SQLインジェクションできるとか、世間を騒がせています。セキュリティの知識って大事だなと改めて気付かされました。 予約サイトのフロント、この時代にBootstrap3で他style=で直書きもなかなかインパクトありましたが、あまり話題にはなっていません。 今日学んだこと 1.XSS応用 JSのエスケープルールは難しい!→脆弱性温床 JSの動的生成を避ける!→別のところで値生成して、JSで参照するとか、インラインJSONPで渡すとか 2.SQLインジェクション 狙ったかのようにホットなタイミング。 激ヤバな脆弱性。すべての情報抜かれる。 SQLの
1 min read
セキュリティ週間1日目【備忘録】5/17

セキュリティ週間1日目【備忘録】5/17

セキュリティ週間1日目! 目次 * 1 ひとこと感想 * 2 今日学んだこと * 2.1 1.バリデーションの重要性 * 2.2 2.XSS(クロスサイトスクリプティング) * 3 セキュリティ週間前に学んだこと * 3.1 1.フォームの書き換え * 3.2 2.クッキーの問題 * 3.3 3.JSのセキュリティ * 3.4 4.CORS ひとこと感想 思った以上に身近に脆弱性が潜んでいることを知りました。 今日学んだこと 1.バリデーションの重要性 SQLインジェクションみたいなやつとか、内部で意図せぬスクリプトを実行される →特殊な記号を許可しなかったりすることが大事!つまりはバリデーション大事! 2.XSS(クロスサイトスクリプティング) 動的にHTMLとか生成するときにコードミスってて起きるやつ。 irame+JSだけじゃなくてform改変もできて、それが公式のサイトURLで実行される脅威。 エスケープ処理で対応。
1 min read
今週をセキュリティ週間にします!

今週をセキュリティ週間にします!

5/17~5/23を勝手にセキュリティ週間にして、趣味で勉強する内容をセキュリティ特化にすることに決めました。 目次 * 1 経緯・目的 * 1.1 技術面 * 1.2 生活面 * 2 参考図書? * 2.1 【メイン】体系的に学ぶ 安全なWebアプリケーションの作り方 第2版[固定版] 脆弱性が生まれる原理と対策の実践 * 2.2 【おまけ】王様達のヴァイキング 経緯・目的 技術面 最近自身のサーバーでセキュリティホールを突かれてマルウェアを入れられてしまいました。原因はLaravelの脆弱性で、適切に管理しておけば防げる問題でした。今は趣味なので誰にも迷惑かけない事故だったのですが、これからを考えるとこれは間違いなく重大事件だし、見過ごしてはいけないと感じます。ハインリッヒの法則ってやつです。 フレームワークにセキュリティを任せておけば大概うまくいってしまう世界に甘えてしまった自分を戒めるためにも、そして教養としても必要だと感じてセキュリティに重点を置くことに決めました。 生活面
2 min read
とりあえずHTML&CSS&JSを触るための環境構築

とりあえずHTML&CSS&JSを触るための環境構築

とりあえずHTML,CSS,JSをはじめて触るための環境構築です。 この環境構築だけではPHPやNodeは動きません!! ブラウザ、デザインツール、コードエディタ(ちょっとだけ拡張機能)で行きます。 目次 * 1 【ブラウザ】GoogleChromeのダウンロード・インストール * 2 【デザインツール】Figmaのアカウント作成 * 3 【コードエディタ】VSCodeのダウンロード * 4 VSCodeのインストール * 5 VScode拡張機能の導入 * 5.1 日本語にする「Japanese Language Pack for Visual Studio Code」 * 5.2 全角スペースを可視化する「EvilInspector」 * 5.3 終わりのタグを付けてくれる「Auto Close Tag」 * 5.4 保存と同時に反映してくれる「Live Server」 * 6
4 min read

Pythonで自分の日記を分析した話!

大学の講義で「実践データサイエンス」という講義がありまして、Pythonでのデータ解析を学びました。 その最終課題が「学習したことを用いて自由に行っていい」とのことだったので、自分の日記を分析することにしました。 べらぼうに長いので、詳しいことは良いから結果だけ見たい方は目次の「分析結果」まで飛ばしちゃってください! 目次 * 1 背景と動機 * 2 実施方法 * 2.1 テキストデータ(日記)の下処理 * 2.2 文字数解析 * 2.3 テキストマイニング * 2.3.1 形態素解析 * 2.3.2 文章の自動生成 * 2.3.3 WordCloud * 2.3.4 感情の変化と分析 * 2.4 データ * 2.4.1
28 min read
3種の完全食を食べ比べる。

3種の完全食を食べ比べる。

食生活が乱れるー!!!!! 一人暮らし大学生あるあるではないでしょうか。 そこで完全食です。 目次 * 1 BALANCER * 2 BASE FOOD * 3 COMPグミ * 4 終わり BALANCER 今回の中では最安値で溶かして飲むタイプのものです。 計り付きスプーンでジッパーになっているので、手軽に摂取できます。 ですが、私的にはちょっとバナナ感が強すぎる味でして、継続して飲むのは難しいと感じました。 お手頃に、時間のないときに、おすすめです。 BASE FOOD 完全食の中では非常に珍しくパンです。しっかりパンです。 これが、非常に美味しいんです。 美味しくて足りない栄養素まで取れちゃう完璧な品なのですが、高価なんです。 一袋あたりでチェーン店の一番安いメニューくらいの価格になってしまいます。。 石油王になった暁には、常用したと思いました。 COMPグミ COMPシリーズは飲料タイ
2 min read
M5Paperで作った卓上カレンダー的なもの。

M5Paperで作った卓上カレンダー的なもの。

M5Paperという電子ペーパー付きマイコンを購入しました。 目次 * 1 そこで… * 2 ちょっとした紹介 そこで… 作りました!!! ↓全体像はこんな感じです。↓ ちょっとした紹介 C系の言語で画面描画する力を持ち合わせていなかったので、サーバー上でwebページを画像化したものを取得して表示するロジックになってます。なのでほぼHTML&CSS&JS&PHPで描画してます! 1時間に1度の描画更新時以外はディープスリープさせることで数ヶ月に1度の充電で良いんです。電子ペーパーは画面書き換えにしか電池消費しないので、とても省エネなディスプレイです。 Alexaをトリガーとして記録している起床・就寝時間のグラフ表示機能、我ながら上出来ではないでしょうか……
1 min read
宇大生の日帰り旅行は熱海が最強かもしれない。
青春18きっぷ

宇大生の日帰り旅行は熱海が最強かもしれない。

端的に言いますと!! コスパ良い!適度な距離!非日常! です。  日常の雑事に追われて、心を見失うことが日々あります。そんなときは、お出かけしましょ。 2015年の上野東京ラインの開業で宇大生の利便性は飛躍的に向上したと言っても過言ではありません。 これまで宇都宮から乗換なしでは上野までしか行けなかったのが、静岡県の熱海まで行けるんです。(ちなみに宇都宮まで乗り換え無しで行ける上りは「沼津」です。) さて、フル区間JR普通列車ということで、青春18きっぷが使えます、1日あたり2410円で行けちゃいます。 通常片道だけで熱海宇都宮間の乗車賃は3740円。往復で7480円です。これが2410円となるのはかなりお得です。3回分の額ですよ。 そして、青春18きっぷなのに無理のないスケジュール!そんな事あって良いんですか…… さて、これはとある宇大生の旅路です。 目次 * 1 往路 * 2 おいしい食事 * 3 海! * 4 樹齢2千年超の大楠 * 5 熱海温泉 * 6 帰路
5 min read
Python+seleniumで大学生活をより良くしました。

Python+seleniumで大学生活をより良くしました。

オンライン授業下の大学生は言うまでもなくネットが重要となるわけです。 とりわけ重要なのは大学からの情報をちゃんと入手することです。でもこれはかなり手間のかかることです。 弊大学の場合 ログイン不要系 * 大学公式サイト * 学部公式サイト * 生協公式サイト ログイン必要系 * 教務ポータル * 学部が使う授業情報サイト * オンライン授業で使うサイト * 大学提供のメールサイト を毎日巡回しなければなりません。こうなっては朝ごはんどころではありません。 教務ポータルに関しては3回ログインしないといけません。いくら自動パスワード入力がブラウザについていてもこれは面倒です。 目次 * 1 ログイン不要系の場合 * 2 ログイン必要系の場合 * 3 終わり ログイン不要系の場合 これはRSSフィードで解決です。 RSSフィードが存在しないものはFeed43というツールでRSSフィードを生成できるようになります。 それをSlackやFeedlyで取得することで
1 min read
まさに自分が求めていたマイコン、M5Paperを手に入れました。

まさに自分が求めていたマイコン、M5Paperを手に入れました。

電子インクって素敵じゃないですか? 私は常日頃その事を考えていて、電子インクとマイコンでオリジナルなツールを作ろうと思っていたのですが、 電子インク高い!! マイコン選びも大変!! バッテリー素人が扱ったら確実に爆発させて死ぬ!!! とハードルの高さに悩んでいました。 そこに現れた救世主がM5Paperです 目次 * 1 M5Paperとは? * 2 しかし、在庫がない。 * 3 届いた。 * 4 そしてHelloWorld * 5 とりあえずの使い道 M5Paperとは? M5Stack社が提供するタッチパネル搭載電子インク+バッテリー+温湿度センサー+Wi-Fi,Bluetoothモジュール付きマイコン?です。 何じゃそりゃってレベルで予め備わっています。 そして自分が欲しい物全部揃いです。 弱点でもあり利点でもあるのですが、基盤むき出しではありません。 ・弱点はGPIOなどが使えないこと(拡張モジュール接続ピンが出ているので、そこからカメラなどはつなげるみたい
3 min read
大学1年生の遠距離実家帰省(栃木→島根)2021春
青春18きっぷ

大学1年生の遠距離実家帰省(栃木→島根)2021春

一人暮らし先から実家まで、JRの営業路線換算で1000kmを超えます。 この1年間、コロナ禍に翻弄され、帰るに帰れませんでした。 しかしそろそろ各種手続きなどが必要なため、実家帰省は「不要不急」から「必要急」と言える状態になりました。 つきましては、実家帰省をすることにしました。 そんな私の初めての実家帰省です。 目標:密を避けつつ、帰省の過程を大事にする。 目次 * 1 大まかなスケジュール * 2 2021年3月14日出発・移動・観光 * 3 2021年3月15日移動・観光・到着 * 4 2021年3月16日~18日・滞在 * 5 2021年3月19日移動・観光・到着 大まかなスケジュール 日付できごと3/14出発・移動3/15移動・帰宅3/16実家滞在3/17実家滞在3/18実家滞在3/19出発・移動・帰宅 移動にかかる時間と滞在している時間がほぼ互角です。とんぼ返りです。
15 min read