Source: https://www.usenix.org/system/files/conference/usenixsecurity18/sec18-tian.pdf