0%

Goals

  • Understand how to hijack an IPSec/SIP session
    • Non-3GPP network access of 4G/5G core network is protected by IPSec
  • You will learn about
    • the IPSec operation
    • using adb shell for development on smartphones
    • fabricating packets using raw socket
    • fabricating ESP headers and authentication data
    • fabricating TCP packets

介紹

IPSec 是什麼

Internet Protocol Security 是一安全的網路協定套件,而在傳輸層就是利用 TLS,IPSec 透過對 IP 協定的封包進行加密和認證來保護 IP 協定的網路傳輸協定族(一些相互關聯的協定的集合),簡單來說就是運用多種協定和演算法來保護 IP 封包。

  • 兩個主要功能
    • 封裝安全載荷(ESP),提供機密性、資料來源認證、無連接完整性、防重放和有限的傳輸流(traffic-flow)機密性
    • 網際網路金鑰交換(Internet Key Exchange,簡稱IKE或IKEv2),為 AH、ESP 操作所需的安全關聯(SA)提供演算法、封包和金鑰參數 –> 在這個 project 不會討論到這個,因為在 core network 中 key 來自於 SIM 卡

Security Association(SA)

SA 是資料庫(SAD)中的某一筆紀錄,登錄所需的安全機制,例如: 安全協定(AH 或 ESP)、操作模式(傳輸或通道模式)、認證演算法(HMAC-MD5等)、加密系統(DES-CBC等)、或共享秘密金鑰等。

更多關於 SA 細節可以參考: 連結

閱讀全文 »

repo: https://github.com/kenchen879/kata-potter

需求設計

曾幾何時,有一個 5 本書系列,講述了一位名叫哈利的非常英國的英雄。 (至少在這個 Kata 被發明的時候,只有 5 個。從那以後他們成倍增加)全世界的孩子都認為他很棒,當然,出版商也一樣。因此,為了對人類慷慨解囊,(並為了增加銷售額),他們建立了以下定價模型,以利用哈利吸引人的優點。

這五本書中的任何一本都需要 8 歐元。但是,如果您從該系列中購買了兩本不同的書,則可以在這兩本書上獲得 5% 的折扣。
如果您購買 3 種不同的書籍,您將獲得 10% 的折扣。購買 4 種不同的書籍,您將獲得 20% 的折扣。如果您全部購買 5 個,您將獲得 25% 的巨大折扣。

請注意,例如,如果您購買了四本書,其中 3 本書是不同的書名,那麼您可以在其中的 3 本書上獲得 10% 的折扣,但第四本書的價格仍然是 8 歐元。

波特狂熱正在席捲全國,各地青少年的父母都在排隊,購物籃裡裝滿了波特的書籍。你的任務是編寫一段代碼來計算任何可以想像到的購物籃的價格,並提供盡可能大的折扣。

舉例來說,這個購物籃會花費多少錢?

  • 2 copies of the first book
  • 2 copies of the second book
  • 2 copies of the third book
  • 1 copy of the fourth book
  • 1 copy of the fifth book
1
2
3
4
(4 * 8) - 20% [first book, second book, third book, fourth book]
+ (4 * 8) - 20% [first book, second book, third book, fifth book]
= 25.6 * 2
= 51.20

開始 Red–Green–Refactor cycle

閱讀全文 »

資料中心網路技術 project3 在 Mininet 中建立拓樸並使用 SDN 控制器監視系統


交大資料中心網路技術 project 3,在這個 project 將會學到如何使用 Mininet 建立拓樸並使用 SDN controller 監視系統。

Demo日期: 4/21 16:00

Mininet 介紹


基本指令

  • $ 在 shell 中執行 Linux 指令

  • mininet> 在 Mininet’s CLI 中執行 Mininet 指令

  • # 在 root shell 中執行 Linux 指令

  • 顯示 Mininet 參數選項

    1
    $ sudo mn -h
  • 使用最小拓樸進入 Mininet CLI

    1
    $ sudo mn

    mininet 預設拓樸 mininal,包含一個 switch、一個 controller 和 兩個主機

  • 顯示 Mininet CLI commands

    1
    mininet> help
  • 顯示 nodes

    1
    mininet> nodes
  • 顯示鏈結

    1
    mininet> net
  • 印出所有 nodes 的資訊

    1
    mininet> dump
  • 對 host1 下 ifonfig -a 指令

    1
    mininet> h1 ifconfig -a
  • 測試兩個hosts的連線

    1
    mininet> h1 ping h2
  • 測試所有連線

    1
    pingall
  • 執行一簡單的 web server and client

    1
    2
    3
    4
    mininet> h1 python -m SimpleHTTPServer 80 &
    mininet> h2 wget -O - h1
    ...
    mininet> h1 kill %python
  • 離開 CLI

    1
    mininet> exit
  • CleanUp,若有 carsh 則執行

    1
    $ sudo mn -c

進階選項

  • --custom: 使用 custom topology
  • --topo: 使用在腳本中的字典 “topos” 的 “mytopo”
  • --link=tc: 使用 traffic control link
  • --controller: 使用外部 controller 控制
    1
    sudo mn --topo mytopo --custom ~/mininet/custom/xxxscript.py --controller remote --switch default,protocols=OpenFlow13 --link=tc
閱讀全文 »

資料中心網路技術期中考準備 ch1~3


整理交大 110-2 資料中心網路技術期中考筆記,範圍:

筆記整理


ch1

大綱:

  • 介紹
  • 雲端運算
    • 例子: 從地(ground)到雲(cloud)
    • 什麼是雲端運算
    • 雲服務和部署模型
  • 資料中心網路的特性和挑戰

介紹

閱讀全文 »

我在 2022 年的四月份投了 MTK 暑期實習,這篇文章會整理關於 MTK 5G 暑期實習可能會問到的問題,除了針對履歷還會有 O.S 的基本概念(但我在面試時沒有被問到專業知識,不過還是整理部分題目上來),並且要做簡報來介紹,最後會有我對整個面試的心得。

D: 4/1 官網投遞履歷
[D+7] 填寫面試時間
[D+12] 面試
[D+19] HR 口頭 offer
[D+26] offer letter

請勿轉載,都是我的心血 :q

面試前準備

  • 事前測驗(線上,面試前一天完成)
    • C coding test
    • TOEIC 英文測驗
    • 華德士個人風格評量
  • 更新線上資料,履歷、成績單和自我評核的部分
  • 自我介紹簡報 (做大概 20 頁左右)

投影片內容

大概 20 頁左右

  1. 專案介紹
  2. 修課介紹
  3. 遇到的困難與挑戰,以及如何解決

5G 行動通訊軟韌體開發

閱讀全文 »

我在 2022 年的三月底投了大學長(這邊也非常感謝他對學弟妹的關照)推薦的 TSMC 暑期實習,這篇文章會整理關於 TSMC IT 暑期實習可能會問到的問題,除了針對履歷還會有 HackerRank 的測驗來問(但我在面試時沒有被問到專業知識,不過還是整理部分題目上來),最後會有我對整個面試的心得。

  • 公司: TSMC
  • 職缺: IT BSID
  • 職位: 暑期實習
  • 部門: 不方便透漏
  • 地點: 竹科

D: 3/17 官網投遞履歷
[D+3] 填寫面試時間
[D+6] 面試通知
[D+13] 面試
[D+20] HR 線上面試
[D+41] HR 電話確認是否會去(尚未發 letter)
[D+47] 婉拒

請勿轉載,都是我的心血 :q

介紹台積電

部署策略是什麼

Scale-out,透過 container 和 k8s 等技術,可以隨時擴充需要的資源,因此台積電也在近幾年建立了自己的私有雲。

IT 三大 Division

  • ICSD(Infrastructure Communication Service Division)
    • 網路設施維修維護
  • BSID(Business System Integration Division)
    • 壓力據說最小,很少 on call
  • TSID(Technical System Integration Division)
    • 產線自動化

BSID 是什麼

閱讀全文 »

Hexo + GitHub Actions 利用 CI/CD 自動化部署


我算是 Hexo 新手,在建立 blog 時需要多多爬文才能解決我遇到的問題或是新增功能,剛好在學校學到 CI/CD 相關概念,在這之前一直是以手動佈署的方式(每次都要打 hexo d -g)發文,一開始還沒感覺,當文章數量變多時,光是等 hexo 重新生成靜態頁面後再部署到 GitHub 太久又太麻煩,因此決定使用自動化部署流程。

因為遇到一些問題,為了幫助可能遇到也跟我一樣問題的人,寫了這篇文~

有遇到任何問題,也可以在下方留言板聯絡我!

GitHub Actions 介紹


首先介紹 GitHub Acitons 是什麼,參考自連結

原因: GitHub Actions 是 GitHub 的整合產品,不用額外申請帳號,並且很快,還可以支援 private repo!

簡單介紹

閱讀全文 »

雲原生軟體開發相關概念與技術


由於我在交大選修由台積電開設的「雲原生架構與現代軟體發展趨勢介紹」,所以我對雲原生的概念十分有興趣,這篇會著墨在雲原生進行複習。

由於有版權問題,不會有相關檔案(eg. 投影片、上課內容),請勿轉載!

介紹


什麼是 CI/CD

身為一個 DevOps 開發員,會 CI/CD 觀念很基本,不但降低錯誤發生,也可以提升服務品質。

CI/CD 簡單來說就是程式 push 到 GitHub 或 GitLab 後,會進行流程自動化: 自動 build code、執行 unit test、自動部署、自動更新線上服務等。

CI
開發者執行 git push 到 GitHub 後,將程式更新到 server 的步驟由 Jenkins 負責(相關應用可以到我的另一篇文章參考: 連結)。

閱讀全文 »

行動網路安全 project1 Anomaly Detector in 5G Core Network


這是 NYCU 110-2 行動網路安全的第一個 project,在 5G 的核心網路進行異常偵測,在此之前其實我對 5G 沒有很理解,只知道他比 4G 快、穩、大,他所應用到的技術該如何實現,其實我也是很不懂,所以這篇文不只有 project1 的實作步驟,也會有 5G 相關的概念。

介紹


目標

  • 了解 5G AKA authentication 程序
  • 學會
    • 5G AKA authentication
    • 5G SBA operation
    • free5GC
    • golang programming
    • reading 3GPP Spec

5G AKA authentication

在介紹 5G 前,先來介紹 4G 的認證安全機制。

4G 認證安全機制

閱讀全文 »

Paper

這是我第一篇記錄的 paper,會有我的個人心得,這篇主要是在講述 Big Data 在雲端裡的應用,為了交大雲端計算報告才看的,我的架構會是先從摘要和結論開始,再講述他們的 Methodology。

前言

Big Data 可以幫助組織在 KM 上更加突破,不過因為 Big Data 具 5V 特性(甚至到10V,相關定義可以到此連結查看),傳統的資料管理技術已經無法提供有效的儲存和分析,因此本篇提出新的技術和架構想要解決這個問題。
能夠儲存和處理大量資料的雲端計算因此用於高效的 Big Data 處理,因為能夠最大限度降低 Big Data 分析所需的大規模計算基礎設施的成本。

  • 貢獻
    • 分析 Big Data 對 KM 的影響。
    • 提出基於雲的概念框架,可以即時分析 Big Data,以促進主要在獲得競爭優勢的增強決策。
    • 為加強組織探索 Big Data 和 KM 之間的關係,因其通常是被分開討論。

結論

對於組織來說,收集大量資料為了做出更好的決策,並且根據研究得到

利用資料推動決策的組織可以得到更多利潤。
Big Data 可以為組織有效管理 KM 創造新的可能性和機會。

  • 這篇論文主要是在研究 Big Data 在 KM 的作用,並將兩者連結,因此他們提出一基於雲的框架,透過分析從 Big Data 中提取價值,用於 KM 開發出有效的決策。
  • 在這個框架中,Big Data 平台將用具有雲端服務的技術來支持,像是 HDFS 和 MapReduce,以實現跨資料中心 cluster 的分散式處理。並且利用 NoSQL 在 Big Data 的即時處理上。
  • 通過分析舉例說明 Big Data 獲取和分析的完整週期,將 Big Data 價值轉為可操作的洞察力,用以支持包括知識獲取、分發和共享、呈現和儲存以及利用的 KM 過程。
  • 最後,由於在 KM 中利用這項新技術面臨著許多挑戰,例如數據科學家的可用性和保護資料隱私等,這些問題需要先解決才能實現這個框架。
閱讀全文 »