no image
[CHI 2001, Sensetable] Sensetable: A Wireless Object Tracking Platform for Tangible User Interfaces
오늘 소개할 논문은 Sensetable입니다. Humac Computer Interaction(HCI)의 Tangible User Inteface(TUI) 분야의 연구로, 과학관 같은 곳에서 프로젝트로 상호작용하는 것을 구현하였습니다. 기존에는 컴퓨터 비전 기술이나 wire를 puck(상호작용에 사용되는 물체)에 연결하여 TUI를 구현하였는데, 인식이 부정확하며 느린 반응속도를 보이거나, wire를 사용함으로써 거추장스러워지는 단점을 가지고 있었습니다. 본 연구에서는 이 문제를 해결하고자, 전자기를 이용해 물체를 인식하며 dial이나 modifier를 쉽게 장착할 수 있게 만들어, 보다 다양한 상호작용을 할 수 있게 된 것이 특징입니다. Introduction 기존 연구의 한계는 컴퓨터 비전 기술을 활용..
2023.11.18
10. Malware
Malware에는 다음의 타입이 있습니다. Infectious viruses, worms Concealment Trojan horses, logic bombs, rootkits Strealing information Spyware, keyloggers, screen scrapers For profit Dialers, scarewares, ransomware As platform for other attacks Botnets, backdoors Trojan horse 정상적인 SW처럼 동작하면서 정보를 훔치거나 시스템을 다운시킵니다. 트리거는 유저의 특정 행동입니다. Backdoor 시스템에 비밀 entry point를 만들어둡니다. Logic Bomb 합법적인 프로그램에 설치되어 있습니다. 특정 조건을 ..
2023.06.14
no image
9. Program Analysis
SW Vulnerability 분석에 관한 포스팅이다. 일반적으로 프로그램은 크고 복잡하기 때문에 자동으로 검출하는 것이 목표이다. 검출하고자 하는 취약점은 Syntactic과 Semantic이다. Syntactic Semantic buffer overflow integer overflow etc. login vulnerabilities - memory leak - race condition Bug를 찾기 위해서 분석하기도 하며, 다양한 program representation에서 수행된다. Static program analysis와 Dynamic program analysis가 있다. Program representations Source code Binary code Intermediate repr..
2023.06.14
no image
8. Software Vulnerabilities
Program이 secure하다는 것은 무엇을 의미할까요? Software가 의도한 대로 동작할 때, program이 secure하다고 볼 수 있습니다. 그런 의미에서 SW는 보안에서 중요한 역할을 합니다. 또한 insecurity의 대상이 될 수 있습니다. SW는 공격자로부터 input을 받을 때 문제가 될 수 있습니다. 취약점이 노출되면, 공격자는 program의 availability, integrity, confidentiality에 피해를 줄 수 있습니다. 또한 다른 user의 권한을 사용해 access control policy를 위반하는 행위를 할 수 있습니다. Attacks exploiting SW vulnerabilities 취약점은 Entry points로 이용될 수 있습니다. 다음의 ..
2023.06.14
no image
7. Database Security
OWASP Top 10 Vulnerabiliies Broken access control Cryptographic failures Injection Insecure design Security misconfiguration Vulnerable and outdated components Identification and authentication failures Software and data integrity failures Software logging and monitoring Server Side Request Forgery(SSRF) 대표적으로 이런 보안 취약점이 있다. Database Security DB 보안이 DB에 대한 의존도 증가에도 적절하게 합을 맞추지 못하는 이유는 다음과 같다. DB..
2023.06.13
no image
15. Problem Classes - P, NP, NPC
Complexity Classes 세상에는 이상한 문제가 많습니다. 사람들은 그런 문제들의 난이도를 분류해서 구분하고 있습니다. P냐 NP냐 그런 것들이 다 문제의 난이도를 나타내는 말입니다. 한번 그런 문제 중 하나인 한 붓 그리기를 생각해 봅시다. 그래프에 있는 모든 edge를 한 번만 사용하는 한 붓 그리기가 가능할까요? 그래프에 있는 모든 vertex를 한번만 방문하는 한 붓 그리기가 가능할까요? 그래프에 있는 모든 vertex를 한번만 방문하되, edge의 weight의 합이 B를 넘어가지 않게 한 붓 그리기가 가능할까요? 위의 각 문제는 각각 Euler Tour, Hamiltonian Circuit, Traveling Salesman이라고 불리는 문제입니다. 통상적으로 Euler Tour 문제..
2023.06.11
no image
14. Maximum Flow
Maximum Flow Maximum Flow가 주로 사용되는 분야는 graph에서 최대 flow를 유동하고 싶은 분야이다. 대표적으로 하수도 시스템, 인터넷 네트워크, 교통량 등이 있다. Network는 directed graph G = (V, E, C)로 표현한다. C는 capacity→$R^+$이다. Flow는 f:E=(u, v) →$R$로 표현한다. f는 edge에서 항상 C보다 값이 작다. Augmented Path Elemently paht: s→t이다. 한마디로 source에서 destination까지 갈 수 있는 elemently path이다. Bottleneck은 다음과 같이 구한다. b = $min(c(v_i, v_{i+1}))$ Flow example 가능한 augmented path..
2023.06.11
no image
13. Graph Algorithms - the Shortest Path
Single-Destination Shortest Path 그래프가 주어졌을 때, source에서 destination까지 shortest path를 찾는 문제이다. Optimal substructure 어떤 문제의 최적의 해결책이 그 부분 문제의 최적의 해결책으로부터 효율적으로 구해질 수 있는 경우를 말한다. 이 구조를 만족하는 경우 문제를 Greedy algorithm이나 Dynamic programming을 이용해 해결할 수 있데 된다. s→d까지의 path가 shortest라면, s→t 역시 shortest임을 의미하게 된다. 문제가 이 구조를 만족하는지 확인하는 것은 중요한 문제이다. 다음의 그래프에 대해서 Prim 알고리즘을 적용해보면 무슨 말인지 알 수 있다. Prim은 greedy하게 ed..
2023.06.11
no image
12. Graph Algorithms - Traversal, MST
Graph Basics 일상의 많은 문제는 Object간의 binary 관계로 이루어져 있습니다. 고속도로나 도시의 지도가 그런 예입니다. 중요한 사실은 이런 binary 관계는 table 형태나 graph 형태로 표현이 가능하다는 것입니다. 그럼 graph 이론을 알고 있으면, 많은 문제에 적용할 수 있다 이말이야 Terminology and Representation Graph Directed graph와 Undirected graph, 두 종류로 이루어진다. Directed graph Undirected graph G = (V, E) G = (V, E) V : a set of vertices E : a binary relation on V, called edges (= a set of ordered..
2023.06.11