Eun-Sun Cho
Professor, Department of Computer Science and Engineering
Eng. Bld. 5524, Chungnam National University, Daejeon, Korea
eschough_at_cnu.ac.kr
She is currently working for Department of Computer Science and Engineering, Chungnam National University, Daejeon, Korea, and directing Programming Languages and Systems Laboratory (PLAS Lab.). She received BS, MS and PhD degrees from Department of Computer Science and Statistics, Seoul National University in 1991, 1993 and 1998, respectively. Before she join Chungnam National University in 2006, she worked for KAIST (Korea Advanced Institute of Science and Technology) as a researcher, and Ajou University and Chungbuk National University as a contract professor and an assistant professor, respectively. She visited Pervasive and Mobile Lab. in University of Florida, US as a visiting scholar, Feb.2010~Feb.2011.
Area of Interest: Languages, Program analysis, Data models and Security
Analysis and instrumentation for efficiency, security or safety of programs, by looking into source/binary codes
New paradigms of programming languages for integrated computing systems and complex data management in safer and efficient ways
(Currently, my team and I use program synthesis, deep learning, static/dynamic analysis, binary instrumentation, symbolic execution, and SMT solver to achieve our goal.)
Ongoing Projects (selected)... for more details, please click here.
Analysis on executables distorted by malicious codes and vulnerable inputs (May. 2013~Feb. 2016, Jun. 2016~Dec. 2019, Apr. 2021~Dec.2023, Sep. 2024-Aug.2027): Vulnerabilities of software platforms are able to be prevented by pre-testing and analysis. First, we tried to find out executable paths distorted by malicious codes and vulnerable inputs in Android platform by looking into ARM binary code, together with KAIST, Ajou Univ. and Internet Security laboratory of Chungnam National Univ. (supported by Ministry of Science, ICT and Future Planning) Then, we extened our work to various architectures and domains including finantial technologies and firmware, with other laboratories in Chungnam National Univ. , Ajou Univ. Yonsei Univ. and Gachoen Univ. and several securiy companies (Supported by ITRC from Ministry of Science and ICT and by National security research institutes). Currently, we are working on program synthesis and machine learning based deobfuscation of malware as well as LLVM-based memory safety support (supported by National security research institutes and by IITP, Institute for Information & communications Technology Promotion, Korea)
Privacy preservation and vulnerability analysis for smart contract environments (Apr. 2018~Feb. 2023): The major purpose of smart contracts running on block chain environments is to manage critical financial assets in better ways, but not satisfactory from the point of security and privacy views. We first concentrated on reducing possible vulnerabilities of smart contract codes, together with KAIST, PiLab and Internet Security laboratory of Chungnam National Univ. (supported by IITP, Institute for Information & communications Technology Promotion, Korea). Currently we are working on zero-knowledge proof based privacy preservation programming environment for smart contracts. (supported by National Research Foundation, Korea)
Research publications
To see my publication list and more recent projects, please click here.
Academic Activities
ACM, ACM SIGPLAN, IEEE Computer Society, The Korean Institute of Information Science and Society (KIISE), The Institute of Electronics Engineers of Korea (IEEK), The Korean Institute of Information Security and Cryptology (KIISC) member
KIISE ’s SIG PL (Programming Languages) Group committee(~present), KIISE (2019-2022), KIISC (2018) board of directors
Journal of KIISE: CST(Computer System and Theory) editor in chief (2019-2021), IPSJ Journal of Information Processing (JIP) editorial board (2017-2020, special issue)
ACM Transaction of Embedded Systems, IEEE Transaction on Service Computing, Data and Knowledge Engineering, IEEE Computer, Journal of System Software, Information Science, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, International Journal of Software Engineering and Knowledge Engineering, Simulation Modelling Practice and Theory, IEEE Access, Nuclear Engineering and Technology and etc. reviewer
IEEE Conference on Computers, Software and Applications (COMPSAC) 2018-2021 program cochair of SEPT (SEcurity, Privacy and Trust in computing) , IEEE COMPSAC 2016 fast abstract cochair, IEEE SAINT 2011-2012 publication cochair,
IEEE COMPSAC 2013-2024, MVDA@IEEE COMPSAC (IEEE International Workshop on Modeling and Verifying Distributed Applications) 2013-2024, WoRIE@IEEE IE 2014-2024 (International Workshop on the Reliability of Intelligent Environments at International Conference on Intelligent Environments ), program committee
Object-oriented systems in practice (for graduates, spring 2022-2023), Computer programming III (for undergraduates, spring 2021-2025, flipped learning), Advanced Compilers (for graduates, fall 2021-2024, spring 2020, 2025, fall 2018-2011,2009), Introduction to Compilers (for undergraduates, fall 2024-2006), Introductions to Programming Languages (for undergraduates, spring 2020-2012 flipped learning), Advanced Object-Oriented Systems (for graduates, spring 2019), Advanced Programming Languages (for graduates, fall 2019, spring 2018-2015), Topics of Object-Oriented Programming (for graduates, spring 2014), Ubiquitous Computing (for graduates, spring 2011), Object-oriented Design (for undergraduates, spring 2011), Data Structures (for undergraduates, spring 2009), Advanced Programming (for undergraduates, Spring 2008-2006), Creative Thinking (for undergraduates, Spring 2008-2007), Formal Languages (for graduates, fall 2007-2006)
Software Development Experiences as an Architect/Developer
Developing Stone, an extension of zkay (a zero knowledge proof based smart contract programming langauge for privacy enhancement). Privacy policy of Stone is assumed to be provided with a separate JSON file, while zkay is based a privacy-aware type system. Stone also uses zkay-like type system but only internally, thus end users (developers) do not need to be bothered from the complexity of privacy types. Stone is written mostly in Python, since Feb. 2021. Now the improved version is being made by PLASLab. reseaarch team.
Developing an improved Ethereum VM (EVM+) and an extended Solidity language and compiler (Solc+). Solc+, written in C++, enables EVM to handle security bleaches with new keywords and new EVM byte code. EVM+, an extension of Geth written in Golang, takes extended byte code to handle the problems at runtime. Supported by by IITP, Institute for Information & communications Technology Promotion, Korea (Mar. 18-). Note that currently PLASLab. research team continutes to enhance my indivisual version of EthVM+ independently, named Geth+, since Apr. 2018.
Developed PLUE (Programming Language for Ubiquitous Environments)-to-Java compiler and PLUE runtime (context manager and automata based execution engine), implemented in Java and JavaCC, Supported by ETRI (Korea Electric and Telecommunication Research Institute, in 2004 (PLUEv0.5) and in 2006 (PLUEv1.05). Note that PLUEv1.0 and PLUEv1.1 are implemented with Java, ANTLR, NXT LeJOS and other drivers and published by CNU PLASLab research team in Feb. 2005~Sep.2012.)
Developed OntoScope and Husk, a view manager and a view based access controller for context data described in RDF, respectively. On top of SESAME RDF management engine and SeRQL, implemented in Java and JavaCC. Supported by UCN (Ubiquitous Autonomic Computing and Network, established by Ministry of Information & Communication, Korea, 2007~2009)
Developed an XML parser in nML, a dialect of ML, Supported by Korean Ministry of Science and Technology sponsoring ROPAS (Research on Program Analysis System) as a part of National Creative Research Initiative Center. (Korea Advanced Institute for Science and Technology, Korea, Oct.1999~Apr.2000)
Developed the ESQL/C preprocessor and some related libraries for the relational DBMS (SNU Relational DBMS Platform: SRP): implemented in C++ and flex/bison running on Solaris. Supported by Ministry of Commerce, Industry & Energy. (Seoul National University, Korea, Oct. 1992 ~ Sept. 1996)
Developed a C++-pointer interface supporting the separation of interface and implementation of classes for the object-oriented DBMS (SNU Object-oriented DBMS Platform: SOP). implemented in C++ and flex/bison running on Solaris. Partially supported by the companies Hyun Dai Information Technology and Dong Yang Information System, and Ministry of Commerce, Industry & Energy. (Seoul National University, Korea, Dec.1993~Nov.1995)
Developed a PC emulator for Tandem computer, implemented in C (with three other students.) Supported by National Information & Credit, Inc. Evaluation (Seoul National University, Oct.1991~Apr.1992)
Professional training programs attended
SEEK (Software Engineering Evangelist Korea) 2001-The Advanced Software Engineering Program for Korea, (Carnegie Mellon University, U.S.A., Jun.~Aug. 2001) supported by Ministry of Information & Communication, Korea
BRICS (Basic Research in Computer Science) Summer School in Semantics of Computation (May 1999), Aarhus, Demark supported by ROPAS (Research on Program Analysis System, KAIST) and Korean Ministry of Science and Technology.
Miscellaneous services
Informatization Promotion Committee of Korea Forest Service (2021.1~2023.1), Advisory Committee of Korea Transportation Safety Authority (2015.1-6), and others