Digital light processing (DLP) is a high-resolution, high-speed additive manufacturing method that builds 3D parts by selectively curing photopolymerizable resins layer-by-layer. To achieve multi-color DLP printing, researchers have used multiple switchable resin vats. However, these methods require complex vat switching devices and cleaning manipulations, leading to low efficiency. Therefore, it remains a challenge to achieve multi-color DLP 3D printing efficiently. In this study, a single-vat multi-color DLP 3D printing by using an anthraquinone-based dye is realized. The dye can be oxidized by the free radicals released from photoinitiators under ultraviolet light and change the color from blue to yellow. This color-changing mechanism permits a graded spectrum of colors as concomitants of the photopolymerization process during DLP printing by controlling the light dose without using extra vats or devices. Multi-color demonstrations, such as engineering stress simulation results in 3D and multi-color vases, are successfully fabricated, showing great versatility and efficiency.
A flurry of fuzzing tools (fuzzers) have been proposed in the literature, aiming at detecting software vulnerabilities effectively and efficiently. To date, it is however still challenging to compare fuzzers due to the inconsistency of the benchmarks, performance metrics, and/or environments for evaluation, which buries the useful insights and thus impedes the discovery of promising fuzzing primitives. In this paper, we design and develop UNIFUZZ, an open-source and metrics-driven platform for assessing fuzzers in a comprehensive and quantitative manner. Specifically, UNIFUZZ to date has incorporated 35 usable fuzzers, a benchmark of 20 real-world programs, and six categories of performance metrics. We first systematically study the usability of existing fuzzers, find and fix a number of flaws, and integrate them into UNIFUZZ. Based on the study, we propose a collection of pragmatic performance metrics to evaluate fuzzers from six complementary perspectives. Using UNIFUZZ, we conduct in-depth evaluations of several prominent fuzzers including AFL VUzzer64 [8]. We find that none of them outperforms the others across all the target programs, and that using a single metric to assess the performance of a fuzzer may lead to unilateral conclusions, which demonstrates the significance of comprehensive metrics. Moreover, we identify and investigate previously overlooked factors that may significantly affect a fuzzer's performance, including instrumentation methods and crash analysis tools. Our empirical results show that they are critical to the evaluation of a fuzzer. We hope that our findings can shed light on reliable fuzzing evaluation, so that we can discover promising fuzzing primitives to effectively facilitate fuzzer designs in the future.Yuwei Li and Shouling Ji are the co-first authors. Shouling Ji and Chunming Wu are the co-corresponding authors.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.