ECDHP:(P, aP, bP)が与えられた時にabPを求めよ
楕円離散対数問題(ECDLP): P, Aが与えられた時にA=aPとなるaを求めよ
ECDHPやECDLPが難しいとされている
楕円曲線を用いたDH鍵共有がECDH鍵共有
### 中間者攻撃
アリスとボブの間に入って、秘密鍵s, 公開鍵Sのうち、公開鍵Sを書き換える
Dec(s, c) = m
Enc(B, m) = c’
ソフトウェアエンジニアの技術ブログ:Software engineer tech blog
随机应变 ABCD: Always Be Coding and … : хороший
ECDHP:(P, aP, bP)が与えられた時にabPを求めよ
楕円離散対数問題(ECDLP): P, Aが与えられた時にA=aPとなるaを求めよ
ECDHPやECDLPが難しいとされている
楕円曲線を用いたDH鍵共有がECDH鍵共有
### 中間者攻撃
アリスとボブの間に入って、秘密鍵s, 公開鍵Sのうち、公開鍵Sを書き換える
Dec(s, c) = m
Enc(B, m) = c’
論理積 and
論理和 or
排他的論理和 xor
否定 !
論理積 &&
論理和 ||
if(TRUE and TRUE) echo "結果はTRUEです。<br>\n"; else echo "結果はFALSEです。<br>\n"; $a = 1; $b = 2; if(($a === 1) and ($b === 2)) echo "結果はTRUEです。<br>\n"; else echo "結果はFALSEです。<br>\n"; if(TRUE and FALSE) echo "結果はTRUEです。<br>\n"; else echo "結果はFALSEです。<br>\n"; $a = 1; $b = 2; if(($a === 1) and ($b === -2)) echo "結果はTRUEです。<br>\n"; else echo "結果はFALSEです。<br>\n"; if(TRUE or FALSE) echo "結果はTRUEです。<br>\n"; else echo "結果はFALSEです。<br>\n"; $a = 1; $b = 2; if(($a === 1) or ($b === -2)) echo "結果はTRUEです。<br>\n"; else echo "結果はFALSEです。<br>\n"; // 片方TRUEで両方TRUEではない if(TRUE xor FALSE) echo "結果はTRUEです。<br>\n"; else echo "結果はFALSEです。<br>\n"; $a = 1; $b = 2; if(($a + $b === 3) xor ($b - $a === -1)) echo "結果はTRUEです。<br>\n"; else echo "結果はFALSEです。<br>\n"; // 否定 if(!FALSE) echo "結果はTRUEです。<br>\n"; else echo "結果はFALSEです。<br>\n"; $a = 1; $b = 2; if(!($a + $b === -3)) echo "結果はTRUEです。<br>\n"; else echo "結果はFALSEです。<br>\n";
$ pip install timeout-decorator
タイムアウトの時間が来たら突然終わららせるのではなく、処理中のものを保存してから終了
db.r5.large などの表記で記載されているが、「r5」の部分がインスタンスタイプ、「large」がインスタンスサイズ
インスタンスタイプは、r系、m系、t系などがある。rdsもt系とm系が汎用で、t系はバースト可能クラス
### r系
・メモリ内の大きいデータセットを処理するワークロードに対して高速なパフォーマンスを実現するように設計されているメモリ最適化インスタンスに属するr系
・r6g.largeのような世代の数字の後ろにgのような文字がついているタイプは追加機能(gならばAWS Gravitonプロセッサ(最良のコストパフォーマンスを提供))
・small < medium < large < xlarge < 2xlarge < 4xlarge < ・・・
なるほど、用途で選ぶのね。
$ pgrep -a chrony
1951 /usr/sbin/chronyd
$ chronyc sources -v
インストール不要で、デフォルトでchronydが起動しているのね
$ sudo less /var/log/httpd/error_log
SSL Library Error: error:140AB18F:SSL routines:SSL_CTX_use_certificate:ee key too small AH00016: Configuration Failed
キーが短すぎるの意味がそのままで、今は1024bitだと短いと判断されるらしい。
2048で作り直す必要がある。
うーん、前途多難だな
### 作成手順
ネットワークを作る -> MySQLコンテナを作る -> Redmineコンテナを作る -> 確認 -> 後始末
※WordPressとほぼ同じ構成だがオプションの名前が異なる
$ sudo docker network create redmine000net2
$ sudo docker run –name mysql000ex13 -dit –net=redmine000net2 -e MYSQL_ROOT_PASSWORD=myrootpass -e MYSQL_DATABASE=redmine000db -e MYSQL_USER=redmine000kun -e MYSQL_PASSWORD=rkunpass mysql –character-set-server=utf8mb4 –collation-server=utf8mb4_unicode_ci –default-authentication-plugin=mysql_native_password
$ sudo docker run -dit –name redmine000ex14 –network redmine000net2 -p 8086:3000 -e REDMINE_DB_MYSQL=mysql000ex13 -e REDMINE_DB_DATABASE=redmine000db -e REDMINE_DB_USERNAME=redmine000kun -e REDMINE_DB_PASSWORD=rkunpass redmine
うおおおおおお
何これ?
Dockerfile
FROM ubuntu:20.04 RUN apt update && apt upgrade -y # postfix install RUN DEBIAN_FRONTEND=noninteractive apt install postfix -y # SMTPにはSMTP AUTHが必要 # SMTP AUTHの為のSASLにはCyrus SaslとCyrus IAMPを使う RUN apt install sasl2-bin -y RUN DEBIAN_FRONTEND=noninteractive apt install cyrus-imapd -y # コンテナ起動のスクリプト COPY ./entrypoint.sh / ENTRYPOINT ["sh", "/entrypoint.sh"]
docker-compose.yml
version: '3.3' services: docker-ubuntu-postfix-example: build: context: ./ dockerfile: Dockerfile image: docker-ubuntu-postfix-example-image:latest container_name: docker-ubuntu-postfix-example-container volumes: # Postfixの設定をマウントする - type: bind source: ./configs/main.cf target: /etc/postfix/main.cf # SASL認証のパスワードをマウントする - type: bind source: ./configs/sasl_passwd target: /etc/postfix/sasl_passwd
entrypoint.sh
#!/bin/bash # postfix起動 postfix start # Postfixは/var/spool/postfixにchrootするので、 # /etc/resolv.confではなく/var/spool/postfix/etc/resolv.confを見に行く。 cp /etc/resolv.conf /var/spool/postfix/etc/resolv.conf # SASL認証用テーブル作成 chown root:root /tec/postfix/sasl_passwd postmap /etc/postfix/sasl_passwd # postfixの設定を反映させる postfix reload # コンテナの起動を維持 tail -f /dev/null
configs/main.cf
L postfixを使う場合
# ログの出力設定 mainlog_file = /var/log/mail.log # SMTPリレーの設定 relayhost = [smtp.mailtrap.io]:2525 smtp_sasl_auth_enable = yes smtp_sasl_mechanism_filter = plain smtp_sasl_security_options = noanonymous smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
configs/sasl_passwd
-> postfixのcredential情報
<メールサーバのFQDN>]:587 <ユーザ名>:<パスワード> #★
$ sudo docker-compose build –no-cache
$ sudo docker-compose up -d
$ sudo docker exec -it docker-ubuntu-postfix-example-container /bin/bash
root@7b16a3765167:/# sendmail your-email@example.com
From:your-email@example.com
To:your-email@example.com
Subject:Hello World
Hello World
.
現在、EC2を1台立てて、そこにALBをつけている状態です。
integrated service で create accelerator
そうするとipが二つ発行され、いずれのIPからもアクセスできる様になる。
なるほどね。
### HttpOnly属性
httponly属性を指定すると、HTTPテキスト内のスクリプトからCookieをアクセスできなくなる。
クロスサイト・スクリプティングの脆弱性があっても、その脆弱性によってCookieを盗まれるという事態を防止できる。
php.ini
session.cookie_httponly = 1
### URLエンコードとは
あ -> %E3%81%82 など日本語文字などをURLに使って良い文字の組み合わせに変換すること
パーセントエンコードとも言われることがある
URLデコードは %E3%81%82 -> あ など