Guojun Tang

About Me

Hi, my name is Guojun Tang, and I am a graduate student from the University of New Brunswick, Canada. My current research topic is information security and data privacy. This research experience gives me a good opportunity to learn skills about cybersecurity and how to use cryptographic tools. I have worked with a range of different languages and tools: Java, Python, Git, C. Also, during my undergraduate, I learned and worked with the languages and frameworks of web design (e.g., Javascript, PHP, Node.js, Vue, Mysql) and hardware programming (Verilog).

No matter what kind of skill I have learnt, I always stay self-motivated to learn the fresh knowledge.

A simple version of CV is available here

Education

South China Normal University, China

BSc Computer Science

Supervisor, Dr. Zheng Gong

During my time at South China Normal University, I learnt the basic skills of computer science and began to get an insight into information security. Under the guidance of my undergraduate advisor, Dr. Zheng Gong, I participated in the design of a block cipher (SWAN cipher). In addition to the professional capabilities, I gained many important soft skills, like teamwork and project management.

Besides, I attended many extracurricular activities related to my major and gained many hands-on experiences. This included joining Network Association, a student association where I met many like-minded colleagues and learnt a lot about web applications. I was also a member of the Cybersecurity Team in my college, where my daily routine included preventing cyber attacks from our college’s websites and representing our college in competitions concerning cybersecurity such as Capture The Flag (CTF).

University of New Brunswick, Canada

MSc Computer Science

Supervisor, Dr. Rongxing Lu

The graduate studies at the University of New Brunswick allowed me to go deeper into computer science, and the eminent professors at UNB guided my academic career. I began my research on Privacy-Preservation under the supervision of Dr. Rongxing Lu, where I learned how to apply cryptography tools to various applications as well as certain academic skills. Later on, I participated in the NRC-CNRC co-op program and conducted research for WeightedSim, a privacy-preserving data similarity query strategy based on weighted Euclidean distance. Here is my UNB transcript.

Experience

Guangzhou 49You Co.,Ltd., China

PHP Engineer (Intern)

January 2018 - May 2018

I was a PHP engineer intern at 49You. During my time at this company, I was primarily responsible for maintaining the web Content Management System, which was developed using ThinkPHP and JQuery. My daily responsibilities included bug fixes and updates to the online system.

National Research Council Canada (NRC-CNRC), Canada

Research Student

January 2022 - May 2022

I attended the NRC-CNRC co-op program as a graduate student. I met my supervisor, Dr. Mohammad Mamun, at NRC. With the assistance of Dr. Lu and Dr. Mamun, I successfully conducted and concluded my WeightedSim research, which included designing the scheme, conducting a security analysis, implementing experimental programs (in Java), and writing the paper. At the end of my co-op program, I gave an presentation about my work at NRC to my coworkers.

Projects

This project is a Python-based implementation of a randomness test standard named GM/T 0005-2021, which is similar to the randomness test standard in NIST.

Symmetric Homomorphic Encryption

github.com/guojuntang/SymHomEnc

Symmetric Homomorphic Encryption was proposed by Dr. Rongxing Lu as a Somewhat Homomorphic Encryption that supports both homomorphic addition and homomorphic multiplication. This repository contains the Java implementation of the algorithm, including examples and test cases.

WeightedSim is a privacy-preserving similarity query scheme for multi-dimensional data based on weighted Euclidean distance, Symmetric Homomorphic Encryption, and R-Tree. This repo is the experimental program for WeightedSim, which is implemented in Java.

Currently, the original paper is being reviewed, and the manuscript may be open-sourced in the future.

SWAN Block Cipher

github.com/GongZheng/SWAN

SWAN is a block cipher algorithm whose design is friendly to implementing the white-box encryption form. In this project, I mainly focused on the software and hardware implementation and optimization of the algorithm (C and Verilog HDL).

Publications

  • Feistel Structure Based Construction Of WhiteBox Cryptography(Patent Number:201910264826.1) Tang Guojun, Le Qiwen, LiWeijie, Sun Tao, Gong Zheng
  • SWAN Cipher(2019,March 3rd,Document: http://sfjs.cacrnet.org.cn/site/content/397.html) Tang Guojun, Gong Zheng, LiWeijie, Sun Tao, Xu Zhaoji, Sun Bin, Sun Siwei, Zhang Yingjie
  • A NoisyRounds-based White-box AES Implementation and Corresponding Differential Fault Analysis.SUN T, TANG G J,WUX K,MAOZ N,GONGZ. Journal of Cryptologic Research, 2020, 7(3): 342-357.

When I'm Not Programming

I think I am a very typical Otaku, so in my leisure time I like watching anime and playing all kinds of video games. I also like watching e-sport tournaments. Recently, I have been watching Dota2 and Hearthstone.

I am interested in cooking as well, and am even good at it. Except for the Chinese home dishes, I like different kinds of curry recipes. My butter chicken may even impress my former Indian roommate.