Adding tempalte for IEEE Open Journal of the Computer Society and adapting manuscript for this template

This commit is contained in:
Noah L. Schrick 2022-11-09 10:46:08 -06:00
parent 7211c5af0e
commit 178ea02877
31 changed files with 12320 additions and 44 deletions

View File

@ -0,0 +1,212 @@
@article{schneier_modeling_1999,
title = {Modeling {Security} {Threats}},
url = {https://www.schneier.com/academic/archives/1999/12/attack_trees.html},
author = {Schneier, Bruce},
year = {1999},
journal = {Dr. Dobb's Journal},
note = {vol. 24, no.12}
}
@article{phillips_graph-based_1998,
title = {A graph-based system for network-vulnerability analysis},
volume = {Part F1292},
issn = {1581131682},
doi = {10.1145/310889.310919},
abstract = {This paper presents a graph-based approach to network vulnerability analysis. The method is flexible, allowing analysis of attacks from both outside and inside the network. It can analyze risks to a specific network asset, or examine the universe of possible consequences following a successful attack. The graph-based tool can identify the set of attack paths that have a high probability of success (or a low "effort" cost) for the attacker. The system could be used to test the effectiveness of making configuration changes, implementing an intrusion detection system, etc. The analysis system requires as input a database of common attacks, broken into atomic steps, specific network configuration and topology information, and an attacker profile. The attack information is "matched" with the network configuration information and an attacker profile to create a superset attack graph. Nodes identify a stage of attack, for example the class of machines the attacker has accessed and the user privilege level he or she has compromised. The arcs in the attack graph represent attacks or stages of attacks. By assigning probabilities of success on the arcs or costs representing level-of-effort for the attacker, various graph algorithms such as shortest-path algorithms can identify the attack paths with the highest probability of success.},
journal = {Proceedings New Security Paradigms Workshop},
author = {Phillips, Cynthia and Swiler, Laura Painton},
note = {doi: 10.1145/310889.310919},
year = {1998},
keywords = {Attack graph, Computer security, Network vulnerability},
pages = {71--79},
file = {310889.310919:/home/noah/Zotero/storage/JMW5DI72/310889.310919.pdf:application/pdf},
}
@article{ou_scalable_2006,
title = {A {Scalable} {Approach} to {Attack} {Graph} {Generation}},
issn = {1595935185},
author = {Ou, Xinming and Boyer, Wayne F and Mcqueen, Miles A},
year = {2006},
journal = {CCS '06: Proceedings of the 13th ACM conference on Computer and communications security},
keywords = {attack graphs, enterprise network security, logic-programming},
pages = {336--345},
file = {1180405.1180446:/home/noah/Zotero/storage/TJKHVC4R/1180405.1180446.pdf:application/pdf},
}
@misc{j_hale_compliance_nodate,
title = {Compliance {Method} for a {Cyber}-{Physical} {System}},
author = {{J. Hale} and Hawrylak, P. and Papa, M.},
note = {U.S. Patent Number 9,471,789, Oct. 18, 2016.},
number = {9471789},
file = {Complaince_Graph_US_Patent_9471789:/home/noah/Zotero/storage/55BZN4U7/Complaince_Graph_US_Patent_9471789.pdf:application/pdf},
}
@inproceedings{baloyi_guidelines_2019,
address = {Skukuza South Africa},
title = {Guidelines for {Data} {Privacy} {Compliance}: {A} {Focus} on {Cyberphysical} {Systems} and {Internet} of {Things}},
doi = {10.1145/3351108.3351143},
booktitle = {{SAICSIT} '19: {Proceedings} of the {South} {African} {Institute} of {Computer} {Scientists} and {Information} {Technologists} 2019},
publisher = {Association for Computing Machinery},
author = {Baloyi, Ntsako and Kotzé, Paula},
year = {2019},
}
@article{allman_complying_2006,
title = {Complying with {Compliance}: {Blowing} it off is not an option.},
volume = {4},
number = {7},
journal = {ACM Queue},
author = {Allman, Eric},
year = {2006},
}
@article{sheyner_automated_2002,
title = {Automated {Generation} and {Analysis} of {Attack} {Graphs}},
issn = {9781787284395},
journal = {Proceeding of 2002 IEEE Symposium on Security and Privacy},
author = {Sheyner, O. and Haines, J. and Jha, S. and Lippmann, R.. and Wing, J.},
year = {2002},
pages = {254--265},
file = {sheyner-wing02:/home/noah/Zotero/storage/BV6NHT6L/sheyner-wing02.pdf:application/pdf},
}
@article{zhang_boosting_2017,
title = {Boosting the performance of {FPGA}-based graph processor using hybrid memory cube: {A} case for breadth first search},
issn = {9781450343541},
doi = {10.1145/3020078.3021737},
abstract = {Large graph processing has gained great attention in recent years due to its broad applicability from machine learning to social science. Large real-world graphs, however, are inherently difficult to process efficiently, not only due to their large memory footprint, but also that most graph algorithms entail memory access patterns with poor locality and a low compute-to-memory access ratio. In this work, we leverage the exceptional random access performance of emerging Hybrid Memory Cube (HMC) technology that stacks multiple DRAM dies on top of a logic layer, combined with the flexibility and efficiency of FPGA to address these challenges. To our best knowledge, this is the first work that implements a graph processing system on a FPGA-HMC platform based on software/hardware co-design and co-optimization. We first present the modifications of algorithm and a platform-aware graph processing architecture to perform level-synchronized breadth first search (BFS) on FPGA-HMC platform. To gain better insights into the potential bottlenecks of proposed implementation, we develop an analytical performance model to quantitatively evaluate the HMC access latency and corresponding BFS performance. Based on the analysis, we propose a two-level bitmap scheme to further reduce memory access and perform optimization on key design parameters (e.g. memory access granularity). Finally, we evaluate the performance of our BFS implementation using the AC-510 development kit from Micron. We achieved 166 million edges traversed per second (MTEPS) using GRAPH500 benchmark on a random graph with a scale of 25 and an edge factor of 16, which significantly outperforms CPU and other FPGA-based large graph processors.},
journal = {FPGA 2017 - Proceedings of the 2017 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays},
author = {Zhang, Jialiang and Khoram, Soroosh and Li, Jing},
year = {2017},
pages = {207--216},
file = {Boosting the Performance of FPGA-based Graph Processor using Hybrdi Memory Cube:/home/noah/Zotero/storage/CDKPUXYF/Boosting the Performance of FPGA-based Graph Processor using Hybrdi Memory Cube.pdf:application/pdf},
}
@inproceedings{Monotonicity,
author = {Ammann, Paul and Wijesekera, Duminda and Kaushik, Saket},
title = {Scalable, Graph-Based Network Vulnerability Analysis},
year = {2002},
isbn = {1581136129},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/586110.586140},
doi = {10.1145/586110.586140},
abstract = {Even well administered networks are vulnerable to attack. Recent work in network security has focused on the fact that combinations of exploits are the typical means by which an attacker breaks into a network. Researchers have proposed a variety of graph-based algorithms to generate attack trees (or graphs). Either structure represents all possible sequences of exploits, where any given exploit can take advantage of the penetration achieved by prior exploits in its chain, and the final exploit in the chain achieves the attacker's goal. The most recent approach in this line of work uses a modified version of the model checker NuSMV as a powerful inference engine for chaining together network exploits, compactly representing attack graphs, and identifying minimal sets of exploits. However, it is also well known that model checkers suffer from scalability problems, and there is good reason to doubt whether a model checker can handle directly a realistic set of exploits for even a modest-sized network. In this paper, we revisit the idea of attack graphs themselves, and argue that they represent more information explicitly than is necessary for the analyst. Instead, we propose a more compact and scalable representation. Although we show that it is possible to produce attack trees from our representation, we argue that more useful information can be produced, for larger networks, while bypassing the attack tree step. Our approach relies on an explicit assumption of monotonicity, which, in essence, states that the precondition of a given exploit is never invalidated by the successful application of another exploit. In other words, the attacker never needs to backtrack. The assumption reduces the complexity of the analysis problem from exponential to polynomial, thereby bringing even very large networks within reach of analysis},
booktitle = {Proceedings of the 9th ACM Conference on Computer and Communications Security},
pages = {217224},
numpages = {8},
keywords = {network security, scalability, model checking, monotonic analysis, exploit, vulnerability},
location = {Washington, DC, USA},
series = {CCS '02}
}
@inbook{TVA,
author = {Jajodia, Sushil and Noel, Steven},
year = {2010},
month = {09},
pages = {139-154},
title = {Topological Vulnerability Analysis},
volume = {46},
isbn = {978-1-4419-0139-2},
journal = {Cyber Situational Awareness, Advances in Information Security, Volume 46. ISBN 978-1-4419-0139-2. Springer-Verlag US, 2010, p. 139},
doi = {10.1007/978-1-4419-0140-8_7}
}
@phdthesis{louthan_hybrid_2011,
title = {Hybrid {Attack} {Graphs} for {Modeling} {Cyber}-{Physical} {Systems}},
author = {Louthan, G},
school = {The {University} of {Tulsa}},
year = {2011},
keywords = {icle},
file = {louthan_thesis:/home/noah/Zotero/storage/5SBCLYA3/louthan_thesis.pdf:application/pdf},
}
@phdthesis{cook_rage_2018,
title = {{RAGE}: {The} {Rage} {Attack} {Graph} {Engine}},
author = {Cook, Kyle},
school = {The {University} of {Tulsa}},
year = {2018},
file = {Kyle Cook Thesis:/home/noah/Zotero/storage/2SR28HM2/Kyle Cook Thesis.pdf:application/pdf},
}
@phdthesis{nichols_2018,
title = {{Hybrid} {Attack} {Graphs} for {Use} with a {Simulation} of a {Cyber-Physical} {System}},
author = {Nichols, Will M.},
school = {The {University} of {Tulsa}},
year = {2018},
file = {Will_Nichols_Thesis_FINAL_VER:/home/noah/Zotero/storage/8AXSZXJN/Will_Nichols_Thesis_FINAL_VER.pdf:application/pdf},
}
@article{ming_jo,
author = {Li, Ming and Hawrylak, Peter and Hale, John},
title = {Strategies for Practical Hybrid Attack Graph Generation and Analysis},
year = {2021},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
issn = {2692-1626},
url = {https://doi.org/10.1145/3491257},
doi = {10.1145/3491257},
abstract = {As an analytical tool in cyber-security, an attack graph (AG) is capable of discovering multi-stage attack vectors on target computer networks. Cyber-physical systems (CPSs) comprise a special type of network that not only contains computing devices but also integrates components that operate in the continuous domain, such as sensors and actuators. Using AGs on CPSs requires that the system models and exploit patterns capture both token- and real-valued information. In this paper, we describe a hybrid AG model for security analysis of CPSs and computer networks. Specifically, we focus on two issues related to applying the model in practice: efficient hybrid AG generation and techniques for information extraction from them. To address the first issue, we present an accelerated hybrid AG generator that employs parallel programming and high performance computing (HPC). We conduct performance tests on CPU and GPU platforms to characterize the efficiency of our parallel algorithms. To address the second issue, we introduce an analytical regimen based on centrality analysis and apply it to a hybrid AG generated for a target CPS system to discover effective vulnerability remediation solutions.},
note = {Just Accepted},
journal = {Digital Threats},
month = {oct},
keywords = {cyber-physical system, high performance computing, attack graph, breadth-first search}
}
@inproceedings{CPSIOT,
author = {Al Ghazo, Alaa T. and Ibrahim, Mariam and Ren, Hao and Kumar, Ratnesh},
title = {A2G2V: Automated Attack Graph Generator and Visualizer},
year = {2018},
isbn = {9781450358606},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3215466.3215468},
doi = {10.1145/3215466.3215468},
abstract = {The Internet of Things (IoT) and Cyber-Physical Systems (CPS) technologies have increased the complexity of systems and also exposed them to additional vulnerabilities. Attack-graphs are graphical representations that provide a complete view of how inter-dependencies among atomic vulnerabilities may be exploited by an adversary to stitch together an attack that can compromise the system. Their manual construction is tedious, error-prone, and time consuming. This paper presents a model-based Automated Attack-Graph Generator and Visualizer (A2G2V). Given the networked system description (its components, connectivity, services it supports, their vulnerabilities and protections), the attack graph enlists set of all possible sequences in which atomic-level vulnerabilities can be exploited to compromise a certain system-level security. The proposed A2G2V tool extends an existing formal methods tool (a model-checker) by integrating with it an architecture description tool, our own code (for parsing counterexamples, encoding those for specification relaxation, iterating till all attack sequences are revealed), and also a graph visualization tool.},
booktitle = {Proceedings of the 1st ACM MobiHoc Workshop on Mobile IoT Sensing, Security, and Privacy},
articleno = {3},
numpages = {6},
keywords = {Model Checking, Security, Enumerating Counterexamples, Internet of Things, Attack Graph, Cyber-Physical Systems},
location = {Los Angeles, CA, USA},
series = {Mobile IoT SSP'18}
}
@article{10.1145/3105760,
author = {Mu\~{n}oz-Gonz\'{a}lez, Luis and Sgandurra, Daniele and Paudice, Andrea and Lupu, Emil C.},
title = {Efficient Attack Graph Analysis through Approximate Inference},
year = {2017},
issue_date = {August 2017},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
volume = {20},
number = {3},
issn = {2471-2566},
url = {https://doi.org/10.1145/3105760},
doi = {10.1145/3105760},
abstract = {Attack graphs provide compact representations of the attack paths an attacker can follow to compromise network resources from the analysis of network vulnerabilities and topology. These representations are a powerful tool for security risk assessment. Bayesian inference on attack graphs enables the estimation of the risk of compromise to the systems components given their vulnerabilities and interconnections and accounts for multi-step attacks spreading through the system. While static analysis considers the risk posture at rest, dynamic analysis also accounts for evidence of compromise, for example, from Security Information and Event Management software or forensic investigation. However, in this context, exact Bayesian inference techniques do not scale well. In this article, we show how Loopy Belief Propagation—an approximate inference technique—can be applied to attack graphs and that it scales linearly in the number of nodes for both static and dynamic analysis, making such analyses viable for larger networks. We experiment with different topologies and network clustering on synthetic Bayesian attack graphs with thousands of nodes to show that the algorithms accuracy is acceptable and that it converges to a stable solution. We compare sequential and parallel versions of Loopy Belief Propagation with exact inference techniques for both static and dynamic analysis, showing the advantages and gains of approximate inference techniques when scaling to larger attack graphs.},
journal = {ACM Trans. Priv. Secur.},
month = {jul},
articleno = {10},
numpages = {30},
keywords = {probabilistic graphical models, approximate inference, Bayesian networks}
}
@ARTICLE{8290918,
author={Wang, Huan and Chen, Zhanfang and Zhao, Jianping and Di, Xiaoqiang and Liu, Dan},
journal={IEEE Access},
title={A Vulnerability Assessment Method in Industrial Internet of Things Based on Attack Graph and Maximum Flow},
year={2018},
volume={6},
number={},
pages={8599-8609},
doi={10.1109/ACCESS.2018.2805690}
}
@inproceedings{centrality_based,
author = {Gonda, Tom and Pascal, Tal and Puzis, Rami and Shani, Guy and Shapira, Bracha},
year = {2018},
month = {09},
pages = {},
title = {Analysis of Attack Graph Representations for Ranking Vulnerability Fixes},
doi = {10.29007/2c1q}
}

View File

@ -1,6 +1,4 @@
\relax \relax
\providecommand\babel@aux[2]{}
\@nameuse{bbl@beforestart}
\citation{phillips_graph-based_1998} \citation{phillips_graph-based_1998}
\citation{schneier_modeling_1999} \citation{schneier_modeling_1999}
\citation{ou_scalable_2006} \citation{ou_scalable_2006}
@ -9,12 +7,10 @@
\citation{8290918} \citation{8290918}
\citation{centrality_based} \citation{centrality_based}
\citation{j_hale_compliance_nodate,baloyi_guidelines_2019,allman_complying_2006} \citation{j_hale_compliance_nodate,baloyi_guidelines_2019,allman_complying_2006}
\@writefile{toc}{\contentsline {section}{\numberline {I}INTRODUCTION}{1}{}\protected@file@percent }
\citation{sheyner_automated_2002} \citation{sheyner_automated_2002}
\citation{ou_scalable_2006} \citation{ou_scalable_2006}
\citation{zhang_boosting_2017} \citation{zhang_boosting_2017}
\babel@aux{nil}{}
\@writefile{toc}{\contentsline {section}{\numberline {1}Introduction}{1}{}\protected@file@percent }
\newlabel{sec:introduction}{{1}{1}}
\citation{Monotonicity} \citation{Monotonicity}
\citation{TVA} \citation{TVA}
\citation{ou_scalable_2006} \citation{ou_scalable_2006}
@ -24,58 +20,53 @@
\citation{louthan_hybrid_2011} \citation{louthan_hybrid_2011}
\citation{louthan_hybrid_2011} \citation{louthan_hybrid_2011}
\citation{cook_rage_2018} \citation{cook_rage_2018}
\@writefile{toc}{\contentsline {section}{\numberline {2}Related Work}{2}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {II}Related Work}{2}{}\protected@file@percent }
\newlabel{sec:sync-lit}{{2}{2}} \newlabel{sec:sync-lit}{{II}{2}}
\@writefile{toc}{\contentsline {section}{\numberline {3}Inseparable Features}{2}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {III}Inseparable Features}{2}{}\protected@file@percent }
\newlabel{sec:inseparable}{{3}{2}} \newlabel{sec:inseparable}{{III}{2}}
\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces A network without Synchronous Firing generating infeasible states}}{2}{}\protected@file@percent }
\newlabel{fig:non-sync_ex}{{1}{2}}
\@writefile{toc}{\contentsline {section}{\numberline {4}Implementing Synchronous Firing}{2}{}\protected@file@percent }
\newlabel{sec:implementing}{{4}{2}}
\citation{cook_rage_2018} \citation{cook_rage_2018}
\citation{louthan_hybrid_2011} \citation{louthan_hybrid_2011}
\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces A network without Synchronous Firing generating infeasible states}}{3}{}\protected@file@percent }
\newlabel{fig:non-sync_ex}{{1}{3}}
\@writefile{toc}{\contentsline {section}{\numberline {IV}Implementing Synchronous Firing}{3}{}\protected@file@percent }
\newlabel{sec:implementing}{{IV}{3}}
\@writefile{toc}{\contentsline {subsection}{\numberline {A}GNU Bison and Flex}{3}{}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Inclusion of Synchronous Firing into GNU Bison, GNU Flex, and the overall program}}{3}{}\protected@file@percent }
\newlabel{fig:bison-flex}{{2}{3}}
\citation{nichols_2018} \citation{nichols_2018}
\citation{cook_rage_2018} \citation{cook_rage_2018}
\citation{cook_rage_2018} \citation{cook_rage_2018}
\@writefile{toc}{\contentsline {subsection}{\numberline {4.1}GNU Bison and Flex}{3}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {B}PostgreSQL}{4}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {4.2}PostgreSQL}{3}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {C}Compound Operators}{4}{}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Inclusion of Synchronous Firing into GNU Bison, GNU Flex, and the overall program}}{3}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {D}Graph Generation}{4}{}\protected@file@percent }
\newlabel{fig:bison-flex}{{2}{3}} \@writefile{toc}{\contentsline {section}{\numberline {V}Results}{4}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {4.3}Compound Operators}{3}{}\protected@file@percent } \newlabel{sec:Results}{{V}{4}}
\@writefile{toc}{\contentsline {subsection}{\numberline {4.4}Graph Generation}{4}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {A}Experimental Networks and Computing Platform}{4}{}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces Synchronous Firing in the Graph Generation Process}}{4}{}\protected@file@percent } \newlabel{sec:test-platform}{{A}{4}}
\newlabel{fig:sync-fire}{{3}{4}} \@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces Synchronous Firing in the Graph Generation Process}}{5}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {5}Results}{4}{}\protected@file@percent } \newlabel{fig:sync-fire}{{3}{5}}
\newlabel{sec:Results}{{5}{4}} \@writefile{toc}{\contentsline {subsection}{\numberline {B}Results and Analysis}{5}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.1}Experimental Networks and Computing Platform}{4}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {1}Results for the Theoretical Environment}{5}{}\protected@file@percent }
\newlabel{sec:test-platform}{{5.1}{4}} \newlabel{sec:theo_res}{{1}{5}}
\@writefile{toc}{\contentsline {subsection}{\numberline {5.2}Results and Analysis}{5}{}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces Synchronous Firing on Runtime}}{6}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.1}Results for the Theoretical Environment}{5}{}\protected@file@percent } \newlabel{fig:Sync-RT}{{4}{6}}
\newlabel{sec:theo_res}{{5.2.1}{5}}
\@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces Synchronous Firing on Runtime}}{5}{}\protected@file@percent }
\newlabel{fig:Sync-RT}{{4}{5}}
\@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces Results for the Non-Synchronous Firing Testing}}{5}{}\protected@file@percent }
\newlabel{table:NS-Table}{{1}{5}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.2}Results for a Grouped Environment}{5}{}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {5}{\ignorespaces Bar Graph and Line Graph Representations of Synchronous Firing on State Space}}{6}{}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {5}{\ignorespaces Bar Graph and Line Graph Representations of Synchronous Firing on State Space}}{6}{}\protected@file@percent }
\newlabel{fig:Sync-State}{{5}{6}} \newlabel{fig:Sync-State}{{5}{6}}
\@writefile{lof}{\contentsline {figure}{\numberline {6}{\ignorespaces Speedup (Amdahl's) Obtained When Using Synchronous Firing}}{6}{}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {6}{\ignorespaces Speedup (Amdahl's) Obtained When Using Synchronous Firing}}{6}{}\protected@file@percent }
\newlabel{fig:Sync-Spd}{{6}{6}} \newlabel{fig:Sync-Spd}{{6}{6}}
\@writefile{lot}{\contentsline {table}{\numberline {2}{\ignorespaces Results for the Synchronous Firing Testing}}{6}{}\protected@file@percent } \@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces Results for the Non-Synchronous Firing Testing}}{6}{}\protected@file@percent }
\newlabel{table:S-Table}{{2}{6}} \newlabel{table:NS-Table}{{1}{6}}
\@writefile{lot}{\contentsline {table}{\numberline {3}{\ignorespaces Results for the Comprehensive Services without Synchronous Firing}}{6}{}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {2}Results for a Grouped Environment}{6}{}\protected@file@percent }
\newlabel{table:Non-Sync-Comp-Table}{{3}{6}} \@writefile{lot}{\contentsline {table}{\numberline {2}{\ignorespaces Results for the Synchronous Firing Testing}}{7}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6}Future Works}{6}{}\protected@file@percent } \newlabel{table:S-Table}{{2}{7}}
\newlabel{sec:fw}{{6}{6}} \@writefile{lot}{\contentsline {table}{\numberline {3}{\ignorespaces Results for the Comprehensive Services without Synchronous Firing}}{7}{}\protected@file@percent }
\newlabel{table:Non-Sync-Comp-Table}{{3}{7}}
\@writefile{lot}{\contentsline {table}{\numberline {4}{\ignorespaces Results for the Comprehensive Services with Synchronous Firing}}{7}{}\protected@file@percent } \@writefile{lot}{\contentsline {table}{\numberline {4}{\ignorespaces Results for the Comprehensive Services with Synchronous Firing}}{7}{}\protected@file@percent }
\newlabel{table:Sync-Comp-Table}{{4}{7}} \newlabel{table:Sync-Comp-Table}{{4}{7}}
\@writefile{lof}{\contentsline {figure}{\numberline {7}{\ignorespaces Synchronous Firing on Runtime}}{7}{}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {7}{\ignorespaces Synchronous Firing on Runtime}}{7}{}\protected@file@percent }
\newlabel{fig:Comp-Sync-RT}{{7}{7}} \newlabel{fig:Comp-Sync-RT}{{7}{7}}
\@writefile{lof}{\contentsline {figure}{\numberline {8}{\ignorespaces Bar Graph and Line Graph Representations of Synchronous Firing with Comprehensive Services on State Space}}{7}{}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {8}{\ignorespaces Bar Graph and Line Graph Representations of Synchronous Firing with Comprehensive Services on State Space}}{7}{}\protected@file@percent }
\newlabel{fig:Comp-Sync-State}{{8}{7}} \newlabel{fig:Comp-Sync-State}{{8}{7}}
\@writefile{lof}{\contentsline {figure}{\numberline {9}{\ignorespaces Speedup (Amdahl's) Obtained When Using Synchronous Firing with Comprehensive Services}}{7}{}\protected@file@percent }
\newlabel{fig:Comp-Sync-Spd}{{9}{7}}
\@writefile{toc}{\contentsline {section}{\numberline {7}Conclusion}{7}{}\protected@file@percent }
\bibdata{Bibliography} \bibdata{Bibliography}
\bibcite{phillips_graph-based_1998}{1} \bibcite{phillips_graph-based_1998}{1}
\bibcite{schneier_modeling_1999}{2} \bibcite{schneier_modeling_1999}{2}
@ -91,10 +82,15 @@
\bibcite{sheyner_automated_2002}{12} \bibcite{sheyner_automated_2002}{12}
\bibcite{zhang_boosting_2017}{13} \bibcite{zhang_boosting_2017}{13}
\bibcite{Monotonicity}{14} \bibcite{Monotonicity}{14}
\@writefile{lof}{\contentsline {figure}{\numberline {9}{\ignorespaces Speedup (Amdahl's) Obtained When Using Synchronous Firing with Comprehensive Services}}{8}{}\protected@file@percent }
\newlabel{fig:Comp-Sync-Spd}{{9}{8}}
\@writefile{toc}{\contentsline {section}{\numberline {VI}Future Works}{8}{}\protected@file@percent }
\newlabel{sec:fw}{{VI}{8}}
\@writefile{toc}{\contentsline {section}{\numberline {VII}Conclusion}{8}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{REFERENCES}{8}{}\protected@file@percent }
\bibcite{TVA}{15} \bibcite{TVA}{15}
\bibcite{louthan_hybrid_2011}{16} \bibcite{louthan_hybrid_2011}{16}
\bibcite{cook_rage_2018}{17} \bibcite{cook_rage_2018}{17}
\bibcite{nichols_2018}{18} \bibcite{nichols_2018}{18}
\bibstyle{ieeetr} \bibstyle{ieeetr}
\@writefile{toc}{\contentsline {section}{References}{8}{}\protected@file@percent } \gdef \@abspage@last{9}
\gdef \@abspage@last{8}

View File

@ -0,0 +1,95 @@
\begin{thebibliography}{10}
\bibitem{phillips_graph-based_1998}
C.~Phillips and L.~P. Swiler, ``A graph-based system for network-vulnerability
analysis,'' {\em Proceedings New Security Paradigms Workshop}, vol.~Part
F1292, pp.~71--79, 1998.
\newblock doi: 10.1145/310889.310919.
\bibitem{schneier_modeling_1999}
B.~Schneier, ``Modeling {Security} {Threats},'' {\em Dr. Dobb's Journal}, 1999.
\newblock vol. 24, no.12.
\bibitem{ou_scalable_2006}
X.~Ou, W.~F. Boyer, and M.~A. Mcqueen, ``A {Scalable} {Approach} to {Attack}
{Graph} {Generation},'' {\em CCS '06: Proceedings of the 13th ACM conference
on Computer and communications security}, pp.~336--345, 2006.
\bibitem{CPSIOT}
A.~T. Al~Ghazo, M.~Ibrahim, H.~Ren, and R.~Kumar, ``A2g2v: Automated attack
graph generator and visualizer,'' in {\em Proceedings of the 1st ACM MobiHoc
Workshop on Mobile IoT Sensing, Security, and Privacy}, Mobile IoT SSP'18,
(New York, NY, USA), Association for Computing Machinery, 2018.
\bibitem{ming_jo}
M.~Li, P.~Hawrylak, and J.~Hale, ``Strategies for practical hybrid attack graph
generation and analysis,'' {\em Digital Threats}, oct 2021.
\newblock Just Accepted.
\bibitem{10.1145/3105760}
L.~Mu\~{n}oz Gonz\'{a}lez, D.~Sgandurra, A.~Paudice, and E.~C. Lupu,
``Efficient attack graph analysis through approximate inference,'' {\em ACM
Trans. Priv. Secur.}, vol.~20, jul 2017.
\bibitem{8290918}
H.~Wang, Z.~Chen, J.~Zhao, X.~Di, and D.~Liu, ``A vulnerability assessment
method in industrial internet of things based on attack graph and maximum
flow,'' {\em IEEE Access}, vol.~6, pp.~8599--8609, 2018.
\bibitem{centrality_based}
T.~Gonda, T.~Pascal, R.~Puzis, G.~Shani, and B.~Shapira, ``Analysis of attack
graph representations for ranking vulnerability fixes,'' 09 2018.
\bibitem{j_hale_compliance_nodate}
{J. Hale}, P.~Hawrylak, and M.~Papa, ``Compliance {Method} for a
{Cyber}-{Physical} {System}.''
\newblock U.S. Patent Number 9,471,789, Oct. 18, 2016.
\bibitem{baloyi_guidelines_2019}
N.~Baloyi and P.~Kotzé, ``Guidelines for {Data} {Privacy} {Compliance}: {A}
{Focus} on {Cyberphysical} {Systems} and {Internet} of {Things},'' in {\em
{SAICSIT} '19: {Proceedings} of the {South} {African} {Institute} of
{Computer} {Scientists} and {Information} {Technologists} 2019}, (Skukuza
South Africa), Association for Computing Machinery, 2019.
\bibitem{allman_complying_2006}
E.~Allman, ``Complying with {Compliance}: {Blowing} it off is not an option.,''
{\em ACM Queue}, vol.~4, no.~7, 2006.
\bibitem{sheyner_automated_2002}
O.~Sheyner, J.~Haines, S.~Jha, R.~Lippmann, and J.~Wing, ``Automated
{Generation} and {Analysis} of {Attack} {Graphs},'' {\em Proceeding of 2002
IEEE Symposium on Security and Privacy}, pp.~254--265, 2002.
\bibitem{zhang_boosting_2017}
J.~Zhang, S.~Khoram, and J.~Li, ``Boosting the performance of {FPGA}-based
graph processor using hybrid memory cube: {A} case for breadth first
search,'' {\em FPGA 2017 - Proceedings of the 2017 ACM/SIGDA International
Symposium on Field-Programmable Gate Arrays}, pp.~207--216, 2017.
\bibitem{Monotonicity}
P.~Ammann, D.~Wijesekera, and S.~Kaushik, ``Scalable, graph-based network
vulnerability analysis,'' in {\em Proceedings of the 9th ACM Conference on
Computer and Communications Security}, CCS '02, (New York, NY, USA),
p.~217224, Association for Computing Machinery, 2002.
\bibitem{TVA}
S.~Jajodia and S.~Noel, {\em Topological Vulnerability Analysis}, vol.~46,
pp.~139--154.
\newblock 09 2010.
\bibitem{louthan_hybrid_2011}
G.~Louthan, {\em Hybrid {Attack} {Graphs} for {Modeling} {Cyber}-{Physical}
{Systems}}.
\newblock PhD thesis, The {University} of {Tulsa}, 2011.
\bibitem{cook_rage_2018}
K.~Cook, {\em {RAGE}: {The} {Rage} {Attack} {Graph} {Engine}}.
\newblock PhD thesis, The {University} of {Tulsa}, 2018.
\bibitem{nichols_2018}
W.~M. Nichols, {\em {Hybrid} {Attack} {Graphs} for {Use} with a {Simulation} of
a {Cyber-Physical} {System}}.
\newblock PhD thesis, The {University} of {Tulsa}, 2018.
\end{thebibliography}

View File

@ -0,0 +1,49 @@
This is BibTeX, Version 0.99d (TeX Live 2022/Arch Linux)
Capacity: max_strings=200000, hash_size=200000, hash_prime=170003
The top-level auxiliary file: Schrick-Noah_AG-CG-SyncFire.aux
The style file: ieeetr.bst
Database file #1: Bibliography.bib
Warning--empty booktitle in centrality_based
Warning--empty publisher in TVA
You've used 18 entries,
1876 wiz_defined-function locations,
581 strings with 6930 characters,
and the built_in function-call counts, 4246 in all, are:
= -- 415
> -- 178
< -- 0
+ -- 67
- -- 49
* -- 286
:= -- 624
add.period$ -- 25
call.type$ -- 18
change.case$ -- 14
chr.to.int$ -- 0
cite$ -- 20
duplicate$ -- 230
empty$ -- 405
format.name$ -- 49
if$ -- 1028
int.to.chr$ -- 0
int.to.str$ -- 18
missing$ -- 15
newline$ -- 65
num.names$ -- 18
pop$ -- 64
preamble$ -- 1
purify$ -- 0
quote$ -- 0
skip$ -- 138
stack$ -- 0
substring$ -- 202
swap$ -- 82
text.length$ -- 0
text.prefix$ -- 0
top$ -- 0
type$ -- 0
warning$ -- 2
while$ -- 35
width$ -- 20
write$ -- 178
(There were 2 warnings)

View File

@ -0,0 +1,582 @@
This is pdfTeX, Version 3.141592653-2.6-1.40.24 (TeX Live 2022/Arch Linux) (preloaded format=pdflatex 2022.11.8) 9 NOV 2022 10:44
entering extended mode
restricted \write18 enabled.
%&-line parsing enabled.
**Schrick-Noah_AG-CG-SyncFire.tex
(./Schrick-Noah_AG-CG-SyncFire.tex
LaTeX2e <2021-11-15> patch level 1
L3 programming layer <2022-04-10> (./ieeeoj.cls
LaTeX Warning: You have requested document class `IEEEoj',
but the document class provides `IEEEphot'.
Document Class: IEEEphot 2009/06/23 V1.2
-- See the "IEEEphot_HOWTO" manual for usage information.
\@IEEEtrantmpdimenA=\dimen138
\@IEEEtrantmpdimenB=\dimen139
\@IEEEtrantmpcountA=\count185
\@IEEEtrantmpcountB=\count186
\@IEEEtrantmptoksA=\toks16
LaTeX Font Info: Trying to load font information for OT1+ptm on input line 3
98.
(/usr/share/texmf-dist/tex/latex/psnfss/ot1ptm.fd
File: ot1ptm.fd 2001/06/04 font definitions for OT1/ptm.
)
-- Using 8.25in x 10.75in (IEEE Photonics PaperSize) paper.
-- Using PDF output.
\@IEEEnormalsizeunitybaselineskip=\dimen140
-- This is a 10 point document.
\CLASSINFOnormalsizebaselineskip=\dimen141
\CLASSINFOnormalsizeunitybaselineskip=\dimen142
\IEEEnormaljot=\dimen143
LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <5> not available
(Font) Font shape `OT1/ptm/b/n' tried instead on input line 756.
LaTeX Font Info: Font shape `OT1/ptm/bx/it' in size <5> not available
(Font) Font shape `OT1/ptm/b/it' tried instead on input line 756.
LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <7> not available
(Font) Font shape `OT1/ptm/b/n' tried instead on input line 756.
LaTeX Font Info: Font shape `OT1/ptm/bx/it' in size <7> not available
(Font) Font shape `OT1/ptm/b/it' tried instead on input line 756.
LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <8> not available
(Font) Font shape `OT1/ptm/b/n' tried instead on input line 756.
LaTeX Font Info: Font shape `OT1/ptm/bx/it' in size <8> not available
(Font) Font shape `OT1/ptm/b/it' tried instead on input line 756.
LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <10.03749> not available
(Font) Font shape `OT1/ptm/b/n' tried instead on input line 756.
LaTeX Font Info: Font shape `OT1/ptm/bx/it' in size <10.03749> not available
(Font) Font shape `OT1/ptm/b/it' tried instead on input line 756.
LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <10> not available
(Font) Font shape `OT1/ptm/b/n' tried instead on input line 756.
LaTeX Font Info: Font shape `OT1/ptm/bx/it' in size <10> not available
(Font) Font shape `OT1/ptm/b/it' tried instead on input line 756.
LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <12> not available
(Font) Font shape `OT1/ptm/b/n' tried instead on input line 756.
LaTeX Font Info: Font shape `OT1/ptm/bx/it' in size <12> not available
(Font) Font shape `OT1/ptm/b/it' tried instead on input line 756.
LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <17> not available
(Font) Font shape `OT1/ptm/b/n' tried instead on input line 756.
LaTeX Font Info: Font shape `OT1/ptm/bx/it' in size <17> not available
(Font) Font shape `OT1/ptm/b/it' tried instead on input line 756.
LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <20> not available
(Font) Font shape `OT1/ptm/b/n' tried instead on input line 756.
LaTeX Font Info: Font shape `OT1/ptm/bx/it' in size <20> not available
(Font) Font shape `OT1/ptm/b/it' tried instead on input line 756.
LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <18> not available
(Font) Font shape `OT1/ptm/b/n' tried instead on input line 756.
LaTeX Font Info: Font shape `OT1/ptm/bx/it' in size <18> not available
(Font) Font shape `OT1/ptm/b/it' tried instead on input line 756.
\IEEEilabelindentA=\dimen144
\IEEEilabelindentB=\dimen145
\IEEEilabelindent=\dimen146
\IEEEelabelindent=\dimen147
\IEEEdlabelindent=\dimen148
\IEEElabelindent=\dimen149
\IEEEiednormlabelsep=\dimen150
\IEEEiedmathlabelsep=\dimen151
\IEEEiedtopsep=\skip47
\c@section=\count187
\c@subsection=\count188
\c@subsubsection=\count189
\c@paragraph=\count190
\c@IEEEsubequation=\count191
\abovecaptionskip=\skip48
\belowcaptionskip=\skip49
\c@figure=\count192
\marginfigbox=\box50
\c@table=\count193
\margintabbox=\box51
\@IEEEeqnnumcols=\count194
\@IEEEeqncolcnt=\count195
(/usr/share/texmf-dist/tex/latex/graphics/color.sty
Package: color 2021/12/07 v1.3c Standard LaTeX Color (DPC)
(/usr/share/texmf-dist/tex/latex/graphics-cfg/color.cfg
File: color.cfg 2016/01/02 v1.6 sample color configuration
)
Package color Info: Driver file: pdftex.def on input line 149.
(/usr/share/texmf-dist/tex/latex/graphics-def/pdftex.def
File: pdftex.def 2020/10/05 v1.2a Graphics/color driver for pdftex
))
(/usr/share/texmf-dist/tex/generic/iftex/ifpdf.sty
Package: ifpdf 2019/10/25 v3.4 ifpdf legacy package. Use iftex instead.
(/usr/share/texmf-dist/tex/generic/iftex/iftex.sty
Package: iftex 2022/02/03 v1.0f TeX engine tests
))
(/usr/share/texmf-dist/tex/latex/base/ifthen.sty
Package: ifthen 2020/11/24 v1.1c Standard LaTeX ifthen package (DPC)
)
Package color Info: Redefining color white on input line 3384.
\tempbox=\box52
\abstractbox=\box53
\keybox=\box54
\@IEEEtmpitemindent=\dimen152
\c@IEEEbiography=\count196
\@IEEEtranrubishbin=\box55
\footheight=\dimen153
\typeheight=\dimen154
\typewidth=\dimen155
\authorcount=\count197
\chkaucount=\count198
\tempcount=\count199
\affcount=\count266
(/usr/share/texmf-dist/tex/latex/wrapfig/wrapfig.sty
\wrapoverhang=\dimen156
\WF@size=\dimen157
\c@WF@wrappedlines=\count267
\WF@box=\box56
\WF@everypar=\toks17
Package: wrapfig 2003/01/31 v 3.6
)
(/usr/share/texmf-dist/tex/latex/tools/array.sty
Package: array 2021/10/04 v2.5f Tabular extension package (FMi)
\col@sep=\dimen158
\ar@mcellbox=\box57
\extrarowheight=\dimen159
\NC@list=\toks18
\extratabsurround=\skip50
\backup@length=\skip51
\ar@cellbox=\box58
)
\quotebox=\box59
\quoteskp=\skip52
\sdquoteskp=\skip53
\quotecnt=\count268
)
(/usr/share/texmf-dist/tex/latex/cite/cite.sty
LaTeX Info: Redefining \cite on input line 302.
LaTeX Info: Redefining \nocite on input line 332.
Package: cite 2015/02/27 v 5.5
)
(/usr/share/texmf-dist/tex/latex/spverbatim/spverbatim.sty
Package: spverbatim 2009/08/10 v1.0 Verbatim with breakable spaces
)
(/usr/share/texmf-dist/tex/latex/amsmath/amsmath.sty
Package: amsmath 2021/10/15 v2.17l AMS math features
\@mathmargin=\skip54
For additional information on amsmath, use the `?' option.
(/usr/share/texmf-dist/tex/latex/amsmath/amstext.sty
Package: amstext 2021/08/26 v2.01 AMS text
(/usr/share/texmf-dist/tex/latex/amsmath/amsgen.sty
File: amsgen.sty 1999/11/30 v2.0 generic functions
\@emptytoks=\toks19
\ex@=\dimen160
))
(/usr/share/texmf-dist/tex/latex/amsmath/amsbsy.sty
Package: amsbsy 1999/11/29 v1.2d Bold Symbols
\pmbraise@=\dimen161
)
(/usr/share/texmf-dist/tex/latex/amsmath/amsopn.sty
Package: amsopn 2021/08/26 v2.02 operator names
)
\inf@bad=\count269
LaTeX Info: Redefining \frac on input line 234.
\uproot@=\count270
\leftroot@=\count271
LaTeX Info: Redefining \overline on input line 399.
\classnum@=\count272
\DOTSCASE@=\count273
LaTeX Info: Redefining \ldots on input line 496.
LaTeX Info: Redefining \dots on input line 499.
LaTeX Info: Redefining \cdots on input line 620.
\Mathstrutbox@=\box60
\strutbox@=\box61
\big@size=\dimen162
LaTeX Font Info: Redeclaring font encoding OML on input line 743.
LaTeX Font Info: Redeclaring font encoding OMS on input line 744.
\macc@depth=\count274
\c@MaxMatrixCols=\count275
\dotsspace@=\muskip16
\c@parentequation=\count276
\dspbrk@lvl=\count277
\tag@help=\toks20
\row@=\count278
\column@=\count279
\maxfields@=\count280
\andhelp@=\toks21
\eqnshift@=\dimen163
\alignsep@=\dimen164
\tagshift@=\dimen165
\tagwidth@=\dimen166
\totwidth@=\dimen167
\lineht@=\dimen168
\@envbody=\toks22
\multlinegap=\skip55
\multlinetaggap=\skip56
\mathdisplay@stack=\toks23
LaTeX Info: Redefining \[ on input line 2938.
LaTeX Info: Redefining \] on input line 2939.
)
(/usr/share/texmf-dist/tex/latex/amsfonts/amssymb.sty
Package: amssymb 2013/01/14 v3.01 AMS font symbols
(/usr/share/texmf-dist/tex/latex/amsfonts/amsfonts.sty
Package: amsfonts 2013/01/14 v3.01 Basic AMSFonts support
\symAMSa=\mathgroup4
\symAMSb=\mathgroup5
LaTeX Font Info: Redeclaring math symbol \hbar on input line 98.
LaTeX Font Info: Overwriting math alphabet `\mathfrak' in version `bold'
(Font) U/euf/m/n --> U/euf/b/n on input line 106.
))
(/usr/share/texmf-dist/tex/latex/algorithms/algorithmic.sty
Package: algorithmic 2009/08/24 v0.1 Document Style `algorithmic'
(/usr/share/texmf-dist/tex/latex/graphics/keyval.sty
Package: keyval 2014/10/28 v1.15 key=value parser (DPC)
\KV@toks@=\toks24
)
\c@ALC@unique=\count281
\c@ALC@line=\count282
\c@ALC@rem=\count283
\c@ALC@depth=\count284
\ALC@tlm=\skip57
\algorithmicindent=\skip58
)
(/usr/share/texmf-dist/tex/latex/graphics/graphicx.sty
Package: graphicx 2021/09/16 v1.2d Enhanced LaTeX Graphics (DPC,SPQR)
(/usr/share/texmf-dist/tex/latex/graphics/graphics.sty
Package: graphics 2021/03/04 v1.4d Standard LaTeX Graphics (DPC,SPQR)
(/usr/share/texmf-dist/tex/latex/graphics/trig.sty
Package: trig 2021/08/11 v1.11 sin cos tan (DPC)
)
(/usr/share/texmf-dist/tex/latex/graphics-cfg/graphics.cfg
File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration
)
Package graphics Info: Driver file: pdftex.def on input line 107.
)
\Gin@req@height=\dimen169
\Gin@req@width=\dimen170
)
(/usr/share/texmf-dist/tex/latex/base/textcomp.sty
Package: textcomp 2020/02/02 v2.0n Standard LaTeX package
)
(/usr/share/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def
File: l3backend-pdftex.def 2022-04-14 L3 backend support: PDF output (pdfTeX)
\l__color_backend_stack_int=\count285
\l__pdf_internal_box=\box62
)
(./Schrick-Noah_AG-CG-SyncFire.aux)
\openout1 = `Schrick-Noah_AG-CG-SyncFire.aux'.
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 13.
LaTeX Font Info: ... okay on input line 13.
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 13.
LaTeX Font Info: ... okay on input line 13.
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 13.
LaTeX Font Info: ... okay on input line 13.
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 13.
LaTeX Font Info: ... okay on input line 13.
LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 13.
LaTeX Font Info: ... okay on input line 13.
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 13.
LaTeX Font Info: ... okay on input line 13.
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 13.
LaTeX Font Info: ... okay on input line 13.
(/usr/share/texmf-dist/tex/context/base/mkii/supp-pdf.mkii
[Loading MPS to PDF converter (version 2006.09.02).]
\scratchcounter=\count286
\scratchdimen=\dimen171
\scratchbox=\box63
\nofMPsegments=\count287
\nofMParguments=\count288
\everyMPshowfont=\toks25
\MPscratchCnt=\count289
\MPscratchDim=\dimen172
\MPnumerator=\count290
\makeMPintoPDFobject=\count291
\everyMPtoPDFconversion=\toks26
) (/usr/share/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty
Package: epstopdf-base 2020-01-24 v2.11 Base part for package epstopdf
Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4
85.
(/usr/share/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg
File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv
e
))
Package color Info: Redefining color ojcolor on input line 13.
LaTeX Font Info: Trying to load font information for OT1+phv on input line 2
8.
(/usr/share/texmf-dist/tex/latex/psnfss/ot1phv.fd
File: ot1phv.fd 2020/03/25 scalable font definitions for OT1/phv.
)
** ATTENTION: \authorrefmark is deprecated (line 48). Use \IEEEauthorrefmark in
stead.
LaTeX Font Info: Trying to load font information for U+msa on input line 48.
(/usr/share/texmf-dist/tex/latex/amsfonts/umsa.fd
File: umsa.fd 2013/01/14 v3.01 AMS symbols A
)
LaTeX Font Info: Trying to load font information for U+msb on input line 48.
(/usr/share/texmf-dist/tex/latex/amsfonts/umsb.fd
File: umsb.fd 2013/01/14 v3.01 AMS symbols B
)
** ATTENTION: \authorrefmark is deprecated (line 48). Use \IEEEauthorrefmark in
stead.
LaTeX Font Info: Calculating math sizes for size <6.6> on input line 48.
LaTeX Font Warning: Font shape `OT1/cmr/m/n' in size <3.3> not available
(Font) size <5> substituted on input line 48.
LaTeX Font Warning: Font shape `OML/cmm/m/it' in size <3.3> not available
(Font) size <5> substituted on input line 48.
LaTeX Font Warning: Font shape `OMS/cmsy/m/n' in size <3.3> not available
(Font) size <5> substituted on input line 48.
Underfull \vbox (badness 10000) has occurred while \output is active []
Underfull \vbox (badness 10000) has occurred while \output is active []
<OJIM.png, id=1, 6269.4225pt x 2336.73pt>
File: OJIM.png Graphic file (type png)
<use OJIM.png>
Package pdftex.def Info: OJIM.png used on input line 61.
(pdftex.def) Requested size: 75.09589pt x 28.0pt.
Underfull \vbox (badness 10000) has occurred while \output is active []
Overfull \vbox (8.45pt too high) has occurred while \output is active []
Overfull \vbox (8.922pt too high) has occurred while \output is active []
[1{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}
<./ojim.png>]
LaTeX Font Info: Calculating math sizes for size <10.03749> on input line 67
.
Underfull \vbox (badness 2990) has occurred while \output is active []
Underfull \vbox (badness 2990) has occurred while \output is active []
Overfull \vbox (11.34346pt too high) has occurred while \output is active []
Overfull \vbox (11.2pt too high) has occurred while \output is active []
[2]
<./images/schri1.png, id=21, 1014.79124pt x 400.49625pt>
File: ./images/schri1.png Graphic file (type png)
<use ./images/schri1.png>
Package pdftex.def Info: ./images/schri1.png used on input line 85.
(pdftex.def) Requested size: 221.3985pt x 87.37611pt.
LaTeX Font Info: Font shape `OT1/phv/b/it' in size <9> not available
(Font) Font shape `OT1/phv/b/sl' tried instead on input line 96.
LaTeX Font Info: Trying to load font information for OT1+pcr on input line 1
00.
(/usr/share/texmf-dist/tex/latex/psnfss/ot1pcr.fd
File: ot1pcr.fd 2001/06/04 font definitions for OT1/pcr.
)
Underfull \hbox (badness 10000) in paragraph at lines 102--106
[]
Underfull \hbox (badness 6032) in paragraph at lines 102--106
[]\OT1/ptm/m/n/10.03749 where the ``$\OML/cmm/m/it/10 <$\OT1/ptm/m/n/10.03749 g
roup name$\OML/cmm/m/it/10 >$\OT1/ptm/m/n/10.03749 " iden-ti-fier and ``group"
[]
Underfull \hbox (badness 10000) in paragraph at lines 107--111
[]
Underfull \hbox (badness 10000) in paragraph at lines 112--118
[]
<./images/schri2.png, id=22, 551.05875pt x 710.655pt>
File: ./images/schri2.png Graphic file (type png)
<use ./images/schri2.png>
Package pdftex.def Info: ./images/schri2.png used on input line 121.
(pdftex.def) Requested size: 180.67499pt x 232.99875pt.
Underfull \vbox (badness 10000) has occurred while \output is active []
File: OJIM.png Graphic file (type png)
<use OJIM.png>
Package pdftex.def Info: OJIM.png used on input line 130.
(pdftex.def) Requested size: 75.09589pt x 28.0pt.
Underfull \vbox (badness 10000) has occurred while \output is active []
Overfull \vbox (8.45pt too high) has occurred while \output is active []
[3 <./images/schri1.png> <./images/schri2.png>]
<./images/schri3.png, id=30, 489.83pt x 1053.9375pt>
File: ./images/schri3.png Graphic file (type png)
<use ./images/schri3.png>
Package pdftex.def Info: ./images/schri3.png used on input line 149.
(pdftex.def) Requested size: 244.9144pt x 526.96747pt.
Overfull \vbox (11.34346pt too high) has occurred while \output is active []
Overfull \vbox (11.2pt too high) has occurred while \output is active []
[4]
Underfull \vbox (badness 2503) has occurred while \output is active []
File: OJIM.png Graphic file (type png)
<use OJIM.png>
Package pdftex.def Info: OJIM.png used on input line 200.
(pdftex.def) Requested size: 75.09589pt x 28.0pt.
Underfull \vbox (badness 10000) has occurred while \output is active []
Overfull \vbox (8.45pt too high) has occurred while \output is active []
[5 <./images/schri3.png>]
<./images/schri4.png, id=39, 602.25pt x 238.491pt>
File: ./images/schri4.png Graphic file (type png)
<use ./images/schri4.png>
Package pdftex.def Info: ./images/schri4.png used on input line 205.
(pdftex.def) Requested size: 238.49121pt x 94.44125pt.
<./images/schri5.png, id=40, 549.69pt x 236.301pt>
File: ./images/schri5.png Graphic file (type png)
<use ./images/schri5.png>
Package pdftex.def Info: ./images/schri5.png used on input line 206.
(pdftex.def) Requested size: 238.49121pt x 102.51967pt.
<./images/schri6.png, id=41, 608.163pt x 223.38pt>
File: ./images/schri6.png Graphic file (type png)
<use ./images/schri6.png>
Package pdftex.def Info: ./images/schri6.png used on input line 213.
(pdftex.def) Requested size: 238.49121pt x 87.59843pt.
<./images/schri7.png, id=42, 532.827pt x 236.739pt>
File: ./images/schri7.png Graphic file (type png)
<use ./images/schri7.png>
Package pdftex.def Info: ./images/schri7.png used on input line 214.
(pdftex.def) Requested size: 238.49121pt x 105.96442pt.
<./images/schri8.png, id=43, 533.265pt x 236.301pt>
File: ./images/schri8.png Graphic file (type png)
<use ./images/schri8.png>
Package pdftex.def Info: ./images/schri8.png used on input line 221.
(pdftex.def) Requested size: 238.49121pt x 105.68184pt.
Underfull \vbox (badness 10000) has occurred while \output is active []
Overfull \vbox (11.34346pt too high) has occurred while \output is active []
Overfull \vbox (11.2pt too high) has occurred while \output is active []
[6 <./images/schri4.png> <./images/schri5.png> <./images/schri6.png> <./images
/schri7.png> <./images/schri8.png>]
<./images/schri9.png, id=52, 602.25pt x 238.491pt>
File: ./images/schri9.png Graphic file (type png)
<use ./images/schri9.png>
Package pdftex.def Info: ./images/schri9.png used on input line 333.
(pdftex.def) Requested size: 238.49121pt x 94.44125pt.
<./images/schri10.png, id=53, 549.69pt x 236.301pt>
File: ./images/schri10.png Graphic file (type png)
<use ./images/schri10.png>
Package pdftex.def Info: ./images/schri10.png used on input line 334.
(pdftex.def) Requested size: 238.49121pt x 102.51967pt.
<./images/schri11.png, id=54, 600.717pt x 230.607pt>
File: ./images/schri11.png Graphic file (type png)
<use ./images/schri11.png>
Package pdftex.def Info: ./images/schri11.png used on input line 341.
(pdftex.def) Requested size: 238.49121pt x 91.555pt.
<./images/schri12.png, id=55, 532.389pt x 236.739pt>
File: ./images/schri12.png Graphic file (type png)
<use ./images/schri12.png>
Package pdftex.def Info: ./images/schri12.png used on input line 342.
(pdftex.def) Requested size: 238.49121pt x 106.05112pt.
<./images/schri13.png, id=56, 533.265pt x 236.301pt>
File: ./images/schri13.png Graphic file (type png)
<use ./images/schri13.png>
Package pdftex.def Info: ./images/schri13.png used on input line 349.
(pdftex.def) Requested size: 238.49121pt x 105.68184pt.
Underfull \vbox (badness 10000) has occurred while \output is active []
File: OJIM.png Graphic file (type png)
<use OJIM.png>
Package pdftex.def Info: OJIM.png used on input line 357.
(pdftex.def) Requested size: 75.09589pt x 28.0pt.
Overfull \vbox (8.45pt too high) has occurred while \output is active []
[7 <./images/schri9.png> <./images/schri10.png> <./images/schri11.png> <./imag
es/schri12.png>]
Underfull \vbox (badness 10000) has occurred while \output is active []
(./Schrick-Noah_AG-CG-SyncFire.bbl
Overfull \vbox (11.34346pt too high) has occurred while \output is active []
Overfull \vbox (11.2pt too high) has occurred while \output is active []
[8 <./images/schri13.png>])
File: OJIM.png Graphic file (type png)
<use OJIM.png>
Package pdftex.def Info: OJIM.png used on input line 368.
(pdftex.def) Requested size: 75.09589pt x 28.0pt.
Underfull \vbox (badness 10000) has occurred while \output is active []
Overfull \vbox (8.45pt too high) has occurred while \output is active []
[9
]
(./Schrick-Noah_AG-CG-SyncFire.aux)
LaTeX Font Warning: Size substitutions with differences
(Font) up to 1.7pt have occurred.
)
Here is how much of TeX's memory you used:
4284 strings out of 478238
67861 string characters out of 5850456
373145 words of memory out of 5000000
22438 multiletter control sequences out of 15000+600000
528290 words of font info for 140 fonts, out of 8000000 for 9000
1141 hyphenation exceptions out of 8191
55i,14n,62p,1197b,322s stack positions out of 5000i,500n,10000p,200000b,80000s
{/usr/share/texmf-dist/fonts/enc/dvips/base/8r.enc}</usr/share/texmf-dist/fon
ts/type1/public/amsfonts/cm/cmmi10.pfb></usr/share/texmf-dist/fonts/type1/publi
c/amsfonts/cm/cmr10.pfb></usr/share/texmf-dist/fonts/type1/public/amsfonts/cm/c
mr7.pfb></usr/share/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy10.pfb></usr/
share/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy8.pfb></usr/share/texmf-dis
t/fonts/type1/urw/courier/ucrr8a.pfb></usr/share/texmf-dist/fonts/type1/urw/hel
vetic/uhvb8a.pfb></usr/share/texmf-dist/fonts/type1/urw/helvetic/uhvbo8a.pfb></
usr/share/texmf-dist/fonts/type1/urw/helvetic/uhvr8a.pfb></usr/share/texmf-dist
/fonts/type1/urw/times/utmb8a.pfb></usr/share/texmf-dist/fonts/type1/urw/times/
utmr8a.pfb></usr/share/texmf-dist/fonts/type1/urw/times/utmri8a.pfb>
Output written on Schrick-Noah_AG-CG-SyncFire.pdf (9 pages, 2360480 bytes).
PDF statistics:
124 PDF objects out of 1000 (max. 8388607)
60 compressed objects within 1 object stream
0 named destinations out of 1000 (max. 500000)
71 words of extra memory for PDF output out of 10000 (max. 10000000)

Binary file not shown.

View File

@ -0,0 +1,368 @@
\documentclass{IEEEoj}
\usepackage{cite}
\usepackage{spverbatim}
\usepackage{amsmath,amssymb,amsfonts}
\usepackage{algorithmic}
\usepackage{graphicx,color}
\graphicspath{ {./images/} }
\usepackage{textcomp}
\def\BibTeX{{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em
T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}}
\AtBeginDocument{\definecolor{ojcolor}{cmyk}{0.93,0.59,0.15,0.02}}
\def\OJlogo{\vspace{-14pt}\includegraphics[height=28pt]{OJIM.png}}
\begin{document}
\receiveddate{09 November, 2022}
\reviseddate{XX Month, XXXX}
\accepteddate{XX Month, XXXX}
\publisheddate{XX Month, XXXX}
\currentdate{XX Month, XXXX}
\doiinfo{OJIM.2022.1234567}
\title{State Space Explosion Mitigation for Large-Scale Attack and Compliance Graphs Using Synchronous Exploit Firing}
\author{NOAH L. SCHRICK\authorrefmark{1}, MEMBER, IEEE, AND PETER J. HAWRYLAK\authorrefmark{2}, SENIOR MEMBER, IEEE.}
\affil{Department of Computer Science, University of Tulsa, Tulsa,
OK 74104 USA}
\corresp{CORRESPONDING AUTHOR: Noah L. Schrick (e-mail: noah-schrick@utulsa.edu).}
\begin{abstract}
Attack and compliance graphs are useful tools for cybersecurity and regulatory or compliance analysis.
These graphs represent the state of a system or a set of systems, and can be used to identify all
current or future ways the systems are compromised or at risk of violating regulatory or compliance mandates.
However, due to their exhaustiveness and thorough permutation checking,
these graphs suffer from state space explosion - the graphs rapidly increase in the total number of states, and likewise,
their generation time also rapidly increases.
This state space explosion in turn also slows the analysis process.
This work introduces a mitigation technique called synchronous firing, where graph users and designers
can prevent the generation of infeasible states by firing exploits simultaneously
through joining inseparable features like time.
This feature does not invalidate the integrity of the resulting attack or compliance graph by
altering the exhaustiveness or permutation checking of the generation process,
but rather jointly fires exploits through their defined inseparable features.
\end{abstract}
\begin{IEEEkeywords}
Attack Graph; Compliance and Regulation; Compliance Graph; Cybersecurity; High-Performance Computing; Speedup; Synchronous Firing;
\end{IEEEkeywords}
\maketitle
\section{INTRODUCTION}
\IEEEPARstart{C}{ybersecurity} has been at the forefront of computing for decades, and vulnerability analysis modeling has been utilized to mitigate threats to aid in this effort. One such modeling approach is to represent a system or a set of systems through graphical means, and encode information into the nodes and edges of the graph. Even as early as the late 1990s, experts have composed various graphical models to map devices and vulnerabilities through attack trees, and this work can be seen through the works published by the authors of \cite{phillips_graph-based_1998}.
This work, and other attack tree discussions of this time such as that conducted by the author of \cite{schneier_modeling_1999}, would later be referred to as early versions of modern-day attack graphs \cite{ou_scalable_2006}.
By utilizing this graphical approach, cybersecurity postures can be measured at a system's current status, as well as hypothesize and examine other postures based on system changes over time. Attack graphs have also been extended to Cyber-Physical Systems (CPS) and the Internet of Things (IoT), and their usage can be seen in works such as that presented by the authors of \cite{CPSIOT, ming_jo}. Various analysis metrics can then be performed, such as Bayesian attack graphs \cite{10.1145/3105760}, maximum flow \cite{8290918}, and centrality-based ranking measures \cite{centrality_based}.
As an alternative to attack graphs for examining vulnerable states and measuring cybersecurity postures, the focus can be narrowed to generate graphs with the purpose of examining compliance or regulation statuses. These graphs are known as compliance graphs.
Compliance graphs can be especially useful for cyber-physical systems, where a greater need for compliance exists. As the authors of \cite{j_hale_compliance_nodate, baloyi_guidelines_2019, allman_complying_2006} discuss, cyber-physical systems have seen greater usage, especially in areas such as critical infrastructure and IoT. The challenge of
cyber-physical systems lies not only in the demand for cybersecurity of these systems, but also the concern for safe, stable, and undamaged equipment.
The industry in which these devices are used can lead to additional compliance guidelines that must be followed, increasing the complexity required for examining compliance statuses. Compliance graphs are promising tools that can aid in minimizing the overhead caused by these systems and the regulations they must follow.
Attack graphs are an appealing approach since they are often designed to be exhaustive: all system properties are represented at its initial state, all attack options are fully enumerated, all permutations are examined, and all changes to a system are encoded into their own independent states, where these states are then individually analyzed through the process. The authors of \cite{sheyner_automated_2002} also discuss the advantage of conciseness of attack graphs, where the final graph only incorporates states that an attacker can leverage; no superfluous states are generated that can clutter analysis.
Despite their advantages, attack graphs do suffer from their exhaustiveness as well. As the authors of \cite{ou_scalable_2006} examine, even very small networks with only 10 hosts and 5 vulnerabilities yield graphs with 10 million edges. When scaling attack graphs to analyze the modern, interconnected state of large networks comprising of a multitude of hosts, and utilizing the entries located in the National Vulnerability Database and any custom vulnerability testing, attack graph generation quickly becomes infeasible.
Similar difficulties arise in related fields, where social networks, bioinformatics, and neural network representations result in graphs with millions of states \cite{zhang_boosting_2017}.
This state space explosion is a natural by-product of the graph generation process, and removing or avoiding it entirely undermines the overall goal of attack and compliance graphs. However, there are some scenarios in which the state space explosion can be mitigated when certain features are inseparable. This work discusses the application of synchronous exploit firing which mitigates state space explosion for applicable scenarios, and discusses the results of its use.
\section{Related Work} \label{sec:sync-lit}
Multiple works have introduced various approaches for mitigating state space explosion. The authors of \cite{Monotonicity} propose that attack graphs encapsulate excessive information that lead to difficulties in scalability. They discuss the concept of monotonicity, where attackers do not need to backtrack. If a previous exploit was achieved, its preconditions and postconditions should not be revoked through another, future exploit firing. The authors of \cite{TVA} use monotonicity in their tool, TVA, along with various node and edge representations based on sets and dependency graphs that can likewise mitigate the state space explosion challenge. The authors of \cite{ou_scalable_2006} also take the approach of using alternate representations of the underlying graph structure through logical attack graphs. In this representation, each node only encompasses a portion of the network in a logical statement format, as opposed to encoding the entire system information at each node. This approach is able to limit the total number of nodes to O$(N^2$), with \textit{N} representing the total number of nodes in the system.
A form of synchronous firing is discussed by the author of \cite{louthan_hybrid_2011}, where it is described as grouped exploits. The functionality discussed by the author is similar: firing an exploit should be performed on all possible assets simultaneously. This was also described as synchronizing multiple exploits. The methodology is similar to the one implemented in this work, but there are notable differences.
The first, is that the work performed by the author of \cite{louthan_hybrid_2011} utilizes global features with group features. Using the simultaneous exploit firing necessitated a separation of global and group features, and grouped exploits could not be performed on exploits that could be applicable to both sets.
A second difference is that there is no consistency checking in the work by the author of \cite{louthan_hybrid_2011}, which could lead to indeterminate behavior or race conditions unless additional effort was put into encoding exploits to use precondition guards.
A third difference is that the work of \cite{louthan_hybrid_2011} could still lead to a separation of features. The grouped exploit feature would attempt to fire all exploits on all applicable assets simultaneously, but if some assets were not ready or capable to fire, these assets would not proceed with the exploit firing but the applicable assets would.
The last difference is that the work by the author of \cite{louthan_hybrid_2011} was developed in Python, since that was the language of the generator of the tool at the time. This work relies on RAGE (The RAGE Attack Graph Engine) for the feature development and result collection \cite{cook_rage_2018}. RAGE is developed in C++ for performance enhancements, so the synchronous firing feature in this new work was likewise developed in C++.
\section{Inseparable Features} \label{sec:inseparable}
One main appeal of attack graphs and compliance graphs are their exhaustiveness. The ability to generate all permutations of attack chains or to generate all possible ways a system can fall out of compliance is a valuable feature. The disadvantage of this approach is that the generation of the final graph increases in time, as does the analysis.
Another disadvantage is that this exhaustiveness can produce states that are not actually attainable or realistic, as briefly mentioned in Section \ref{sec:sync-lit}. When a system has assets that have inseparable features, the generation process forcibly separates features to examine all permutations, since the generation process only modifies one quality at a time.
One example of an inseparable feature is time. If two different assets are identical and no constraints dictate otherwise, the two assets should not, and realistically cannot, proceed through time at different rates. For example, if two cars were manufactured at the same moment, one of these cars cannot proceed multiple time steps into the future while the other remains at its current time step; each car must step through time at the same rate.
However, the generation of attack graphs and compliance graphs examines the possibilities that one car ages by one time step, while the other car does not, or vice versa. This results in an attack graph that can be seen in Fig. \ref{fig:non-sync_ex}, which is a partial attack graph showing the separation of the time feature.
All shaded states are considered unattainable, since all of these states comprise of assets that have advanced time at different rates. It is noticeable that not only are the unattainable states themselves a wasteful generation, but they also lead to the generation of even more unattainable states that will then also be explored.
A better procedure for a generation process similar to this example is to have a single state transition that updates assets with an inseparable feature simultaneously.
\begin{figure}[htp]
\centering
\includegraphics[width=0.9\linewidth]{"./images/schri1.png"}
\caption{A network without Synchronous Firing generating infeasible states}
\label{fig:non-sync_ex}
\end{figure}
Post-processing is one option at removing the unattainable states. This process would simplify and reduce the time taken for the analysis process, but the generation process would still suffer from generating and exploring the unattainable states, and would still need to go through a post-processing step.
Instead, a new feature called synchronous firing can be used to prevent the generation of these states. The goal of the synchronous firing feature is to prevent the generation of unattainable states, while incurring no greater computational cost. Section \ref{sec:implementing} will discuss the development of this feature, and Section \ref{sec:Results} will examine the results when using this feature in applicable networks.
\section{Implementing Synchronous Firing} \label{sec:implementing}
For the implementation of the synchronous firing feature, there were four primary changes and additions that were necessary. The first is a change in the lexical analyzer, the second involves multiple changes to PostgreSQL, the third is the implementation of compound operators, and lastly is a change in the graph generation process. The subsections in this Section describe these four alterations.
\subsection{GNU Bison and Flex}
The work conducted by the author of \cite{cook_rage_2018} included the introduction of GNU Bison and GNU Flex into RAGE. The introduction of Bison and Flex allows for an easily modifiable grammar to adjust features, the ability to easily update parsers since Bison and Flex are built into the build system, and increases portability since Flex and Bison generate standard C.
For the development of the synchronous firing feature, a similar approach was taken to that of the work performed by the author of \cite{louthan_hybrid_2011} with the exploit keywords. This work implements the ``group" keyword.
The new keyword is intended to be used when creating the exploit files. The design of exploits in the exploit file is developed as:
\begin{spverbatim} <exploit> ::= <group name> "group"
"exploit" <identifier> ,
(<parameter-list>)= \end{spverbatim}
\\
\\
where the ``$<$group name$>$" identifier and ``group" keyword is optional. An example of an exploit not utilizing the group feature is:
\begin{spverbatim}exploit
brake_pads(2015_Toyota_Corolla_LE)=\end{spverbatim}
\\
\\
and an example of an exploit utilizing the group feature is:
\begin{spverbatim}time group exploit
advance_month(all_applicable)=\end{spverbatim}
\\
\\
To implement the keyword recognition and group name parsing, a few changes were made, where the intention was to detect the usage of the ``group" keyword, and have the lexical analyzer code return to the parser implementation file to alert of the presence of the ``GROUP" token.
The new token is of type string with the name ``GROUP", and it is comprised of a leading ``IDENTIFIER" of type string or integer token, followed by the ``GROUP" token.
This new token also required changes to the processing of the ``exploit" keyword. If the group keyword is not detected, the exploit has a group of name ``null". If the group keyword is detected, then the leading IDENTIFIER is parsed, and the exploit is assigned to a group with the parsed name. Various auxiliary functions were also adjusted to include (for instance) support for printing the groups of each exploit. Fig. \ref{fig:bison-flex} illustrates the incorporation of this feature into Bison, Flex, and the overall program.
\begin{figure}[htp]
\centering
\includegraphics[width=2.5in]{"./images/schri2.png"}
\caption{Inclusion of Synchronous Firing into GNU Bison, GNU Flex, and the overall program}
\label{fig:bison-flex}
\end{figure}
\subsection{PostgreSQL}
As seen in Fig. \ref{fig:bison-flex}, Bison and Flex feed into the Model Database. With the addition of a new group identifier and the group keyword, minor alterations were needed to ensure compatibility with the PostgreSQL database.
One adjustment was to alter the exploit table in the SQL schema to include new columns of type ``TEXT". The second adjustment was to update the SQL builder functions. This included updating the related functions such as exploit creations, exploit parsing, database fetching, and SQL string builders to add additional room for the group identifier. Additional care was taken to ensure that the normalization form of the database was not altered. Before adding the group identifier to its appropriate table, additional checking was performed to ensure there would be no partial functional dependencies or transitive dependencies.
\subsection{Compound Operators}
Many of the graphs previously generated by RAGE comprise of states with features that can be fully enumerated. In many of these generated graphs, there was an established set of qualities that was used, with an established set of values. These typically have included $``compliance$\_$vio=true/false"$, $``root=true/false"$, or other general $``true/false"$ values or $``version=X"$ qualities.
To expand on the types and complexities of graphs that can be generated and to allow for synchronous firing, compound operators have been added to RAGE. When updating a state, rather than setting a quality to a specific value, the previous value can now be modified by an amount specified through standard compound operators such as $\mathrel{+}=$, $\mathrel{-}=$, $\mathrel{*}=$, or $\mathrel{/}=$.
Previous work on an attack graph generator included the implementation of compound operators, as seen by the author of \cite{nichols_2018}. However, this work was conducted on the previous iteration of an attack graph generator written in Python. This attack graph generator has since been rewritten in C++ by the author of \cite{cook_rage_2018}, and compound operators were not included in the latest version of RAGE.
The work conducted by the author of \cite{cook_rage_2018} when designing the software architecture of RAGE included specifications for a quality encoding scheme. As they discuss, qualities have four fields, which include the asset ID, attributes, operator, and value. The operator field is 4 bits, which allows for a total of 16 operators. Since the only operator in use at the time was the $``\mathrel{=}"$ operator, the addition of four compound operators does not surpass the 16 operator limit, and no encoding scheme changes were necessary. This also allows for additional compound operators to be incorporated in the future.
A few changes were necessary to allow for the addition of compound operators. Before the generation of an attack graph begins, all values are stored in a hash table. For previous networks generated by RAGE, this was not a concern since all values could be fully enumerated and all possible values were known. When using compound operators however, not all values can be fully known. The task of approximating which exploits will be applicable and what absolute minimum or maximum value bounds will be prior to generation is difficult, and not all values can be enumerated and stored into the hash table. As a result, real-time updates to the hash table needed to be added to the generator.
The original key-value scheme for hash tables relied on utilizing the size of the hash table for values. Since the order in which updates happen may not always remain consistent (and is especially true in distributed computing environments), it is possible for states to receive different hash values with the original hashing scheme. To prevent this, the hashing scheme was adjusted so that the new value of the compound operator is inserted into the hash table values if it was not found, rather than the size of the hash table.
Previously, there was no safety check for the hash table, so if the value was not found, the program would end execution. The assertion that the new value can be inserted into the hash table is safe to make, since compound operators are conducted on numeric values, and matches the numeric type of the hash table.
Other changes involved updating classes (namely the Quality, EncodedQuality, ParameterizedQuality, NetworkState, and Keyvalue classes) to include a new member for the operator in question. In addition, preconditions were altered to include operator overloads to check the asset identifier, quality name, and quality values for the update process.
\subsection{Graph Generation}
The implementation of synchronous firing in the graph generation process relies on a map to hold the fired status of groups. Previously, each iteration of the applicable exploit vector loop generated a new state. With synchronous firing, all assets should be updating the same state, rather than each independently creating a new state. To implement this, each iteration of the applicable exploit vector checks if the current loop element is in a group and if that group has fired. If the element is in a group, the group has not been fired, and all group members are ready to fire, then all group members will loop through an update process to alter the single converged state. Otherwise, the loop will either continue to the next iteration if group conditions are not met, or will create a single state if it is not in a group. Fig. \ref{fig:sync-fire} displays the synchronous fire approach.
\begin{figure}[htp]
\centering
\includegraphics[scale=0.5,width=2.5in]{"./images/schri3.png"}
\caption{Synchronous Firing in the Graph Generation Process}
\label{fig:sync-fire}
\end{figure}
\section{Results} \label{sec:Results}
\subsection{Experimental Networks and Computing Platform} \label{sec:test-platform}
All data was collected on a 13 node cluster, with 12 nodes serving as dedicated compute nodes, and 1 node serving as the login node. Each compute node has a configuration as follows:
\begin{itemize}
\item{OS: CentOS release 6.9}
\item{CPU: Two 8-core Intel Xeon E5-2620 v3}
\begin{itemize}
\item{With hyperthreading: 2 threads/process per core}
\end{itemize}
\item{Two Intel Xeon Phi Co-Processors}
\item{One FPGA (Nallatech PCIE-385n A7 Altera Stratix V)}
\item{Memory: 64318MiB}
\end{itemize}
All nodes are connected with a 10Gbps Infiniband interconnect.
The example networks for testing the effectiveness of synchronous firing follow the compliance graph generation approach. These networks analyze two assets, both of which are identical 2006 Toyota Corolla cars with identical qualities. The generation examines both cars at their current states, and proceeds to advance in time by a pre-determined amount, up to a pre-determined limit. Each time increment updates each car by an identical amount of mileage. During the generation process, it is determined if a car is out of compliance either through mileage or time since its last maintenance in accordance with the Toyota Corolla Maintenance Schedule manual.
In addition, the tests employ the use of ``services", where if a car is out of compliance, it will go through a correction process and reset the mileage and time since last service. Each test varies in the number of services used. The 1 Service case only employs one service, and it is dedicated to brake pads. The 2-Service case employs two services, where the first service is dedicated to the brake pads, and the second is for exhaust pipes. This process extends to the 3-, 4-, 5-, and 6-Service cases.
The experimental setup is as follows:
\begin{itemize}
\item{All cases ran for 12 months, with time steps of 1 month.}
\item{All cases had the same number of compliance checks: brake pads, exhaust pipes, vacuum pumps, AC filters, oil changes, and driveshaft boots.}
\item{There were 12 base exploits, and an additional 6 exploits were individually added in the form of services for each test.}
\item{All cases used the same network model.}
\item{All cases used the same exploit file, with the exception of the ``group" keyword being present in the synchronous firing testing.}
\item{All services must be performed prior to advancing time, if services are applicable.}
\item{Graph visualization was not timed. Only the generation and database operation time was measured.}
\end{itemize}
The compliance checks are as follows:
\begin{itemize}
\item{Brake pads: to be checked every 6 months}
\item{Exhaust pipes: to be checked every 12 months}
\item{AC filter: to be checked every 12,000 miles}
\item{Vacuum pump: to be checked every 120,000 miles}
\item{Engine oil: to be checked every 6,000 miles}
\item{Driveshaft boots: to be checked every 12,000 miles}
\end{itemize}
\subsection{Results and Analysis}
\subsubsection{Results for the Theoretical Environment} \label{sec:theo_res}
Using the experimental setup described in Section \ref{sec:test-platform} on the platform described at the beginning of Section \ref{sec:test-platform}, results were collected in regards to the effect of synchronous firing on both state space and runtime. The graphs' edge to state ratio (E/S Ratio) was computed as well. These results can be seen in Figures \ref{fig:Sync-RT} and \ref{fig:Sync-State}. The respective tables are seen in Tables \ref{table:NS-Table} and \ref{table:S-Table}. Both figures show a decrease in the number of states and a decrease in the runtime when synchronous firing is utilized. Since synchronous firing prevents the generation of unattainable states, there is no meaningful information loss that occurs in the graphs generated with the synchronous firing feature. Since the resulting number of states was also reduced, there will be increased justification for the synchronous firing approach due to a reduced runtime for the analysis process. Fig. \ref{fig:Sync-Spd} displays the speedup (according to Amdahl's Law) obtained when using synchronous firing instead of non-synchronous firing for identical setups.
When examining the E/S Ratio for the non-synchronous graphs, it is both expected and observed that the ratio slightly increases as the number of services increases. When more applicable exploits are used during the generation process, the number of permutations increases, which corresponds with the growing number of states and edges. However, the increase in the number of services also increases the relation between states and the new permutations.
When comparing the E/S Ratio for the non-synchronous graphs to the E/S Ratio for the synchronous graphs, it is observed that the ratio does not remain constant. For example, for the 5-Service case, the non-synchronous graph has an E/S Ratio of 6.398, and the synchronous graph has an E/S Ratio of 7.209. While the number of states and the number of edges is reduced when using synchronous firing, the ratio of edges to states is not necessarily constant or reduced.
\begin{figure}
\centering
\includegraphics[width=3.3in]{"./images/schri4.png"}
\includegraphics[width=3.3in]{"./images/schri5.png"}
\caption[Synchronous Firing on Runtime]{Bar Graph and Line Graph Representations of Synchronous Firing on Runtime}
\label{fig:Sync-RT}
\end{figure}
\begin{figure}
\centering
\includegraphics[width=3.3in]{"./images/schri6.png"}
\includegraphics[width=3.3in]{"./images/schri7.png"}
\caption{Bar Graph and Line Graph Representations of Synchronous Firing on State Space}
\label{fig:Sync-State}
\end{figure}
\begin{figure}[htp]
\centering
\includegraphics[width=3.3in]{"./images/schri8.png"}
\caption{Speedup (Amdahl's) Obtained When Using Synchronous Firing}
\label{fig:Sync-Spd}
\end{figure}
\begin{table}[htp]
\caption{Results for the Non-Synchronous Firing Testing}
\label{table:NS-Table}
\centering
\setlength\tabcolsep{4pt}
\begin{tabular}{|c|c|c|c|c|}
\hline
\multicolumn{5}{|c|}{Non-Synchronous Firing} \\ \hline
\textbf{\begin{tabular}[c]{@{}c@{}}Number of \\ Services\end{tabular}}
& \textbf{\begin{tabular}[c]{@{}c@{}}Number of \\ States\end{tabular}}
& \textbf{\begin{tabular}[c]{@{}c@{}}Number of \\ Edges\end{tabular}}
& \textbf{\begin{tabular}[c]{@{}c@{}}Runtime\\ (ms)\end{tabular}}
& \textbf{\begin{tabular}[c]{@{}c@{}}E/S\\ Ratio\end{tabular}}
\\ \hline
1 & 37001 & 202920 & 87366.65 & 5.484 \\ \hline
2 & 46361 & 259400 & 115929.97 & 5.595 \\ \hline
3 & 72489 & 405236 & 184634.34 & 5.590 \\ \hline
4 & 93525 & 546280 & 252959.511 & 5.841 \\ \hline
5 & 209944 & 1254784 & 588336.01 & 5.977 \\ \hline
6 & 423940 & 2712165 & 1581697.61 & 6.398 \\ \hline
\end{tabular}
\end{table}
\begin{table}[htp]
\caption{Results for the Synchronous Firing Testing}
\label{table:S-Table}
\centering
\setlength\tabcolsep{4pt}
\begin{tabular}{|c|c|c|c|c|c|}
\hline
\multicolumn{6}{|c|}{Synchronous Firing} \\ \hline
\textbf{\begin{tabular}[c]{@{}c@{}}Services\end{tabular}}
& \textbf{\begin{tabular}[c]{@{}c@{}}States\end{tabular}}
& \textbf{\begin{tabular}[c]{@{}c@{}}Edges\end{tabular}}
& \textbf{\begin{tabular}[c]{@{}c@{}}Runtime\\(ms)\end{tabular}}
& \textbf{\begin{tabular}[c]{@{}c@{}}E/S\\Ratio\end{tabular}}
& \textbf{\begin{tabular}[c]{@{}c@{}}Speedup\end{tabular}}
\\ \hline
1 & 6277 & 3.46E04 & 1.48E04 & 5.507 & 5.87 \\ \hline
2 & 11653 & 6.94E04 & 2.92E04 & 5.954 & 3.96 \\ \hline
3 & 25317 & 1.60E05 & 6.68E04 & 6.321 & 2.76 \\ \hline
4 & 36949 & 2.42E05 & 1.02E05 & 6.538 & 2.47 \\ \hline
5 & 83134 & 5.71E05 & 2.44E05 & 6.868 & 2.42 \\ \hline
6 & 186679 & 1.35E06 & 5.82E05 & 7.209 & 2.72 \\ \hline
\end{tabular}
\end{table}
\subsubsection{Results for a Grouped Environment}
The environment and resulting graphs presented in Section \ref{sec:theo_res} depict the possible states of the two cars in compliance graph formats. While these graphs demonstrated accurate, exhaustive depictions of the cars and their compliance standings, they may not be realistic representations of the most likely outcomes. If a car was due for two compliance checks at the same time, it is unlikely that the car would be taken for one maintenance, returned to its original destination, then driven immediately back for maintenance, and finally to its original destination once more. The more realistic scenario is that the car is taken for maintenance, both services are performed at the same visit, and then the car is returned to its original destination.
Another set of graphs were generated using only the 3-Service case. These services were for a driveshaft boot check, an AC filter change, and an oil change. This set of graphs used `comprehensive services", where a car would undergo multiple services simultaneously. With three services used, there are a total of three permutations: all three services are done individually, two services are performed simultaneously while the other is performed later, and all three services are performed simultaneously.
For this set of examples, all compliance checks have the same time requirements. This work does not introduce any heuristics or methodologies for intentionally performing services early or late. If Service A was required no later than every 6 months, but Service B was required no later than every 8 months, then joining Service A and Service B together would either mean: 1. Service B was completed 2 months earlier than it needed to be, or 2. Service A was completed 2 months later than it needed to be. This was considered out of scope for this approach, but this is noted in the Future Works Section (Section \ref{sec:fw}).
These results are seen in Table \ref{table:Sync-Comp-Table} for the synchronous firing enabled generation, and Table \ref{table:Non-Sync-Comp-Table} for the non-synchronous firing generation. The corresponding figures for the runtime can be seen in Fig. \ref{fig:Comp-Sync-RT}, and the corresponding figures for state space can be seen in Fig. \ref{fig:Comp-Sync-State}. It is noticeable that there is a state space reduction achieved through synchronous firing in this set of examples, along with a runtime improvement. When all three services were conjoined, synchronous firing provided a 5.09x speedup over non-synchronous firing. Using comprehensive services on their own also provided a reduction in state space and an improvement in runtime. When synchronous firing was enabled and comprehensive services were used, the total number of states could be reduced from 25,317 to 3,774, providing a a 6.7x reduction in state space solely from combining services.
Leveraging comprehensive services with synchronous firing enables users to significantly reduce the size of the resulting attack or compliance graphs. Comprehensive services also enable users to introduce heuristics to analyze and identify optimal service plans for compliance, or attack mitigation strategies for attack graphs. Coupled with synchronous firing, analysis of these optimal plans can be performed quicker due to the inexistence of superfluous, unattainable states.
\begin{table}[htp]
\caption{Results for the Comprehensive Services without Synchronous Firing}
\label{table:Non-Sync-Comp-Table}
\centering
\setlength\tabcolsep{4pt}
\begin{tabular}{|c|c|c|c|c|}
\hline
\multicolumn{5}{|c|}{Comprehensive Services with Non-Synchronous Firing} \\ \hline
\textbf{Permutation}
& \textbf{\begin{tabular}[c]{@{}c@{}}States\end{tabular}}
& \textbf{\begin{tabular}[c]{@{}c@{}}Edges\end{tabular}}
& \textbf{\begin{tabular}[c]{@{}c@{}}Runtime\\(ms)\end{tabular}}
& \textbf{\begin{tabular}[c]{@{}c@{}}E/S\\Ratio\end{tabular}}
\\ \hline
\begin{tabular}[c]{@{}c@{}}All \\ Disjoint\end{tabular}
& 72489 & 405236 & 184634.34 & 5.590 \\ \hline
\begin{tabular}[c]{@{}c@{}}Any Two\\Services,\\One Disjoint\end{tabular}
& 50052 & 241176 & 125176.22 & 4.819 \\ \hline
\begin{tabular}[c]{@{}c@{}}All \\ Conjoined\end{tabular}
& 19764 & 87024 & 47126.42 & 4.403 \\ \hline
\end{tabular}
\end{table}
\begin{table}[htp]
\caption{Results for the Comprehensive Services with Synchronous Firing}
\label{table:Sync-Comp-Table}
\centering
\setlength\tabcolsep{4pt}
\begin{tabular}{|c|c|c|c|c|c|}
\hline
\multicolumn{6}{|c|}{Comprehensive Services with Synchronous Firing} \\ \hline
\textbf{Permutation}
& \textbf{\begin{tabular}[c]{@{}c@{}}States\end{tabular}}
& \textbf{\begin{tabular}[c]{@{}c@{}}Edges\end{tabular}}
& \textbf{\begin{tabular}[c]{@{}c@{}}Runtime\\ (ms)\end{tabular}}
& \textbf{\begin{tabular}[c]{@{}c@{}}E/S\\ Ratio\end{tabular}}
& \textbf{\begin{tabular}[c]{@{}c@{}}Speedup\end{tabular}}
\\ \hline
\begin{tabular}[c]{@{}c@{}}All \\ Disjoint\end{tabular}
& 25317 & 160041 & 66799.18 & 6.321 & 2.76 \\ \hline
\begin{tabular}[c]{@{}c@{}}Any Two\\Services,\\One Disjoint\end{tabular}
& 10398 & 55354 & 26042.85 & 5.324 & 4.81 \\ \hline
\begin{tabular}[c]{@{}c@{}}All \\ Conjoined\end{tabular}
& 3774 & 18370 & 9261.03 & 4.868 & 5.09 \\ \hline
\end{tabular}
\end{table}
\begin{figure}
\centering
\includegraphics[width=3.3in]{"./images/schri9.png"}
\includegraphics[width=3.3in]{"./images/schri10.png"}
\caption[Synchronous Firing on Runtime]{Bar Graph and Line Graph Representations of Synchronous Firing with Comprehensive Services on Runtime}
\label{fig:Comp-Sync-RT}
\end{figure}
\begin{figure}
\centering
\includegraphics[width=3.3in]{"./images/schri11.png"}
\includegraphics[width=3.3in]{"./images/schri12.png"}
\caption{Bar Graph and Line Graph Representations of Synchronous Firing with Comprehensive Services on State Space}
\label{fig:Comp-Sync-State}
\end{figure}
\begin{figure}[htp]
\centering
\includegraphics[width=3.3in]{"./images/schri13.png"}
\caption{Speedup (Amdahl's) Obtained When Using Synchronous Firing with Comprehensive Services}
\label{fig:Comp-Sync-Spd}
\end{figure}
\section{Future Works} \label{sec:fw}
As seen and discussed in Section \ref{sec:inseparable}, when unattainable states are generated, there is a compounding effect. Each unattainable state is explored, and is likely to generate additional unattainable states. Future works include examining the effect of synchronous firing when more assets are utilized. It is hypothesized that the synchronous firing approach will lead to an increased runtime reduction and state space reduction due to the increased number of unattainable state permutations. This work had a limited number of assets, but generated upwards of 400,000 states due to repeated applications of the exploit set due to the services corresponding with the compliance graph. Future work could alter the scenario to have a greater number of assets, and a standard set of exploits more akin to an attack graph rather than a compliance graph. Other future works could include measuring the performance of synchronous firing when multiple groups of inseparable features are used. This work used a single group, but multiple groups be added to examine the performance of the feature.
Another avenue for future work would be to take a network science approach. There may be features of interest from examining the topology of the resulting graphs with and without synchronous firing. Various centrality metrics could be examined, as well as examining transformations such as dominant trees or transitive closures derived from the original graphs. Each approach could compare each graph when using or not using synchronous firing to determine if there are possible points of interest. Taking a network science approach could also examine and analyze the E/S Ratio of the graphs when using or not using synchronous firing, and attempt to provide further insight on what those differences mean in terms of usability of the graphs.
Introducing service heuristics could improve the characteristics of synchronous firing. If services are performed too early, then additional states would be generated in the resulting graph. If synchronous firing was not used, these additional states could compound into more states due to the separation of features. Likewise, if services are performed too late, then additional states could be generated to represent the compliance violation, and these states may also compound into more statues without synchronous firing. Examining the impact of synchronous firing when various heuristics are implemented could reveal interesting results.
\section{Conclusion}
This work implemented a state space explosion mitigation technique called synchronous firing. This feature is able to fire exploits simultaneously among a group of assets through a single state transition. By firing exploits across multiple assets, it is able to prevent the separation of features that should normally be inseparable (such as time), and successfully reduces the number of total states in the resulting attack or compliance graph. This feature does not alter the procedure of the generation process in a way that undermines the integrity of the resulting attack or compliance graph, and only groups assets through defined inseparable features. This feature is also toggleable, and the generation process seen in Fig. \ref{fig:sync-fire} does not change if the feature is disabled. This feature successfully reduced the total number of states, reduced the runtime of the generation process, and can lead to a reduced analysis process due to a smaller resulting graph.
\bibliography{Bibliography}
\bibliographystyle{ieeetr}
\end{document}

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

View File

@ -0,0 +1,938 @@
\documentclass{IEEEoj}
\usepackage{cite}
\usepackage{amsmath,amssymb,amsfonts}
\usepackage{algorithmic}
\usepackage{graphicx,color}
\usepackage{textcomp}
\def\BibTeX{{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em
T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}}
\AtBeginDocument{\definecolor{ojcolor}{cmyk}{0.93,0.59,0.15,0.02}}
\def\OJlogo{\vspace{-14pt}\includegraphics[height=28pt]{OJIM.png}}
\begin{document}
\receiveddate{XX Month, XXXX}
\reviseddate{XX Month, XXXX}
\accepteddate{XX Month, XXXX}
\publisheddate{XX Month, XXXX}
\currentdate{XX Month, XXXX}
\doiinfo{OJIM.2022.1234567}
\title{Preparation of Papers for IEEE OPEN JOURNALS}
\author{FIRST A. AUTHOR\authorrefmark{1}, FELLOW, IEEE, SECOND B.
AUTHOR\authorrefmark{2}, AND THIRD C. AUTHOR,~JR.\authorrefmark{1,2},
MEMBER, IEEE}
\affil{National Institute of Standards and
Technology, Boulder, CO 80305 USA}
\affil{Department of Physics, Colorado State University, Fort Collins,
CO 80523 USA}
\corresp{CORRESPONDING AUTHOR: First A. Author (e-mail: author@ boulder.nist.gov).}
\authornote{This work was supported by the Natural Sciences and Engineering Research Council (NSERC) of Canada.}
\markboth{Preparation of Papers for IEEE OPEN JOURNALS}{Author \textit{et al.}}
\begin{abstract}
These instructions give you guidelines for preparing papers for IEEE
Open Journal of Instrumentation and Measurement.
Otherwise, use this document as an instruction set. The electronic file of your paper will be formatted further at IEEE. Paper titles should be written in uppercase and lowercase letters, not all uppercase. Avoid writing long formulas with subscripts in the title; short formulas that identify the elements are fine (e.g., ``Nd--Fe--B''). Do not write ``(Invited)'' in the title. Full names of authors are preferred in the author field, but are not required. Put a space between authors' initials. The abstract must be a concise yet comprehensive reflection of what is in your article. In particular, the abstract must be self-contained, without abbreviations, footnotes, or references. It should be a microcosm of the full article. The abstract must be between 150--250 words. Be sure that you adhere to these limits; otherwise, you will need to edit your abstract accordingly. The abstract must be written as one paragraph, and should not contain displayed mathematical equations or tabular material. The abstract should include three or four different keywords or phrases, as this will help readers to find it. It is important to avoid over-repetition of such phrases as this can result in a page being rejected by search engines. Ensure that your abstract reads well and is grammatically correct.
\end{abstract}
\begin{IEEEkeywords}
Enter key words or phrases in alphabetical order, separated by commas. For a list of suggested keywords, send a blank e-mail to keywords@ieee.org or visit
http://www.ieee.org/\discretionary{}{}{}organizations/pubs/ani\textunderscore prod/keywrd98.txt
\end{IEEEkeywords}
%\IEEEspecialpapernotice{(Invited Paper)}
\maketitle
\section{INTRODUCTION}
\IEEEPARstart{T}{his} document is a template for \LaTeX. If you are
reading a paper or PDF version of this document, please download the
electronic file, trans\_jour.tex, from the IEEE Web site at \underline
{http://ieeeauthorcenter.ieee.org/create-your-ieee-article/}\break\underline{use-authoring-tools-and-ieee-article-templates/ieee-article-}\break\underline{templates/} so you can use it to prepare your manuscript.
You can also explore using the Overleaf editor at
{https://www.overleaf.com/blog/278-how-to-use-overleaf-with-ieee-collabratec-your-quick-guide-to-getting-started\break\#.xsVp6tpPkrKM9}
If your paper is intended for a conference, please contact your conference
editor concerning acceptable formats for your particular
conference.
IEEE will do the final formatting of your paper. If your paper is intended
for a conference, please observe the conference page limits.
\subsection{ABBREVIATIONS AND ACRONYMS}
Define abbreviations and acronyms the first time they are used in the text,
even after they have already been defined in the abstract. Abbreviations
such as IEEE, SI, ac, and dc do not have to be defined. Abbreviations that
incorporate periods should not have spaces: write ``C.N.R.S.,'' not ``C. N.
R. S.'' Do not use abbreviations in the title unless they are unavoidable
(for example, ``IEEE'' in the title of this article).
\subsection{OTHER RECOMMENDATIONS}
Use one space after periods and colons. Hyphenate complex modifiers:
``zero-field-cooled magnetization.'' Avoid dangling participles, such as,
``Using (1), the potential was calculated.'' [It is not clear who or what
used (1).] Write instead, ``The potential was calculated by using (1),'' or
``Using (1), we calculated the potential.''
Use a zero before decimal points: ``0.25,'' not ``.25.'' Use ``cm$^3$,'' not
``cc.'' Indicate sample dimensions as ``0.1 cm \texttimes 0.2 cm,'' not
``0.1 \texttimes 0.2 cm$^{2}$.'' The abbreviation for ``seconds'' is ``s,''
not ``sec.'' Use ``Wb/m$^{2}$'' or ``webers per square meter,'' not
``webers/m$^2$.'' When expressing a range of values, write ``7 to 9'' or
``7-9,'' not ``7\textasciitilde 9.''
A parenthetical statement at the end of a sentence is punctuated outside of
the closing parenthesis (like this). (A parenthetical sentence is punctuated
within the parentheses.) In American English, periods and commas are within
quotation marks, like ``this period.'' Other punctuation is ``outside''!
Avoid contractions; for example, write ``do not'' instead of ``don't.'' The
serial comma is preferred: ``A, B, and C'' instead of ``A, B and C.''
If you wish, you may write in the first person singular or plural and use
the active voice (``I observed that \textellipsis'' or ``We observed that \textellipsis''
instead of ``It was observed that \textellipsis''). Remember to check spelling. If
your native language is not English, please get a native English-speaking
colleague to carefully proofread your paper.
Try not to use too many typefaces in the same article. You're writing
scholarly papers, not ransom notes. Also please remember that MathJax
can't handle really weird typefaces.
\subsection{EQUATIONS}
To make your equations more
compact, you may use the solidus (~/~), the exp function, or appropriate
exponents. Use parentheses to avoid ambiguities in denominators. Punctuate
equations when they are part of a sentence, as in
\begin{equation}
\label{eq1}
x=\frac{111111111}{12345679}=9 .
\end{equation}
Note that $x$ is math mode because it is a variable.
Be sure that the symbols in your equation have been defined before the
equation appears or immediately following. Italicize symbols ($T$ might refer
to temperature, but T is the unit tesla). Refer to ``(1),'' not ``Eq. (1)''
or ``equation (1),'' except at the beginning of a sentence: ``Equation (1)
is \textellipsis .''
\subsection{\LaTeX-SPECIFIC ADVICE}
Please use ``soft'' (e.g., \verb|\eqref{Eq}|) cross references instead
of ``hard'' references (e.g., \verb|(1)|). That will make it possible
to combine sections, add equations, or change the order of figures or
citations without having to go through the file line by line.
Please don't use the \verb|{eqnarray}| equation environment. Use
\verb|{align}| or \verb|{IEEEeqnarray}| instead. The \verb|{eqnarray}|
environment leaves unsightly spaces around relation symbols.
Please note that the \verb|{subequations}| environment in {\LaTeX}
will increment the main equation counter even when there are no
equation numbers displayed. If you forget that, you might write an
article in which the equation numbers skip from (17) to (20), causing
the copy editors to wonder if you've discovered a new method of
counting.
{\BibTeX} does not work by magic. It doesn't get the bibliographic
data from thin air but from .bib files. If you use {\BibTeX} to produce a
bibliography you must send either the .bbl file or the .bib files.
If you use \texttt{biblatex}, please send the .bib file. The .bbl file
generated by \texttt{biblatex} is not designed to be edited.
{\LaTeX} can't read your mind. If you assign the same label to a
subsubsection and a table, you might find that Table I has been cross
referenced as Table IV-B3.
{\LaTeX} does not have precognitive abilities. If you put a
\verb|\label| command before the command that updates the counter it's
supposed to be using, the label will pick up the last counter to be
cross referenced instead. In particular, a \verb|\label| command
should not go before the caption of a figure or a table.
Do not use \verb|\nonumber| or \verb|\notag| inside the \verb|{array}| environment. It
will not stop equation numbers inside \verb|{array}| (there won't be
any anyway) and it might stop a wanted equation number in the
surrounding equation.
\section{UNITS}
Use either SI (MKS) or CGS as primary units. (SI units are strongly
encouraged.) English units may be used as secondary units (in parentheses).
This applies to papers in data storage. For example, write ``15 Gb/cm$^{2}$
(100 Gb/in$^{2})$.'' An exception is when English units are used as
identifiers in trade, such as ``3\textonehalf -in disk drive.'' Avoid
combining SI and CGS units, such as current in amperes and magnetic field in
oersteds. This often leads to confusion because equations do not balance
dimensionally. If you must use mixed units, clearly state the units for each
quantity in an equation.
The SI unit for magnetic field strength $H$ is A/m. However, if you wish to use
units of T, either refer to magnetic flux density $B$ or magnetic field
strength symbolized as \textmu $_{0}H$. Use the center dot to separate
compound units, e.g., ``A\textbullet m$^{2}$.''
\section{SOME COMMON MISTAKES}
The word ``data'' is plural, not singular. The subscript for the
permeability of vacuum \textmu $_{0}$ is zero, not a lowercase letter ``o.''
The term for residual magnetization is ``remanence''; the adjective is
``remanent''; do not write ``remnance'' or ``remnant.'' Use the word
``micrometer'' instead of ``micron.'' A graph within a graph is an
``inset,'' not an ``insert.'' The word ``alternatively'' is preferred to the
word ``alternately'' (unless you really mean something that alternates). Use
the word ``whereas'' instead of ``while'' (unless you are referring to
simultaneous events). Do not use the word ``essentially'' to mean
``approximately'' or ``effectively.'' Do not use the word ``issue'' as a
euphemism for ``problem.'' When compositions are not specified, separate
chemical symbols by en-dashes; for example, ``NiMn'' indicates the
intermetallic compound Ni$_{0.5}$Mn$_{0.5}$ whereas ``Ni--Mn'' indicates an
alloy of some composition Ni$_{x}$Mn$_{1-x}$.
Be aware of the different meanings of the homophones ``affect'' (usually a
verb) and ``effect'' (usually a noun), ``complement'' and ``compliment,''
``discreet'' and ``discrete,''
``principal'' (e.g., ``principal investigator'') and ``principle''
(e.g., ``principle of measurement''). Do not confuse ``imply'' and
``infer.''
Prefixes such as ``non,'' ``sub,'' ``micro,'' ``multi,'' and ``ultra'' are
not independent words; they should be joined to the words they modify,
usually without a hyphen. There is no period after the ``et'' in the Latin
abbreviation ``\textit{et al.}'' (it is also italicized). The abbreviation ``i.e.,'' means
``that is,'' and the abbreviation ``e.g.,'' means ``for example'' (these
abbreviations are not italicized).
A general IEEE styleguide is available at www.ieee.org/\break authortools.
\section{GUIDELINES FOR GRAPHICS PREPARATION
AND SUBMISSION}
\subsection{TYPES OF GRAPHICS}
The following list outlines the different types of graphics published in
IEEE journals. They are categorized based on their construction, and use of
color / shades of gray:
\subsubsection{Color/Grayscale Figures}
Figures that are meant to appear in color, or shades of black/gray. Such
figures may include photographs, illustrations, multicolor graphs, and
flowcharts.
\subsubsection{Line Art Figures}
Figures that are composed of only black lines and shapes. These figures
should have no shades or half-tones of gray, only black and white.
\subsubsection{Author Photos}
Head and shoulders shots of authors that appear at the end of our papers.
\subsubsection{Tables}
Data charts which are typically black and white, but sometimes include
color.
\begin{table}
\caption{Units for Magnetic Properties}
\label{table}
\setlength{\tabcolsep}{3pt}
\begin{tabular}{|p{25pt}|p{75pt}|p{115pt}|}
\hline
Symbol&
Quantity&
Conversion from Gaussian and \par CGS EMU to SI $^{\mathrm{a}}$ \\
\hline
$\Phi $&
magnetic flux&
1 Mx $\to 10^{-8}$ Wb $= 10^{-8}$ V$\cdot $s \\
$B$&
magnetic flux density, \par magnetic induction&
1 G $\to 10^{-4}$ T $= 10^{-4}$ Wb/m$^{2}$ \\
$H$&
magnetic field strength&
1 Oe $\to 10^{3}/(4\pi )$ A/m \\
$m$&
magnetic moment&
1 erg/G $=$ 1 emu \par $\to 10^{-3}$ A$\cdot $m$^{2} = 10^{-3}$ J/T \\
$M$&
magnetization&
1 erg/(G$\cdot $cm$^{3}) =$ 1 emu/cm$^{3}$ \par $\to 10^{3}$ A/m \\
4$\pi M$&
magnetization&
1 G $\to 10^{3}/(4\pi )$ A/m \\
$\sigma $&
specific magnetization&
1 erg/(G$\cdot $g) $=$ 1 emu/g $\to $ 1 A$\cdot $m$^{2}$/kg \\
$j$&
magnetic dipole \par moment&
1 erg/G $=$ 1 emu \par $\to 4\pi \times 10^{-10}$ Wb$\cdot $m \\
$J$&
magnetic polarization&
1 erg/(G$\cdot $cm$^{3}) =$ 1 emu/cm$^{3}$ \par $\to 4\pi \times 10^{-4}$ T \\
$\chi , \kappa $&
susceptibility&
1 $\to 4\pi $ \\
$\chi_{\rho }$&
mass susceptibility&
1 cm$^{3}$/g $\to 4\pi \times 10^{-3}$ m$^{3}$/kg \\
$\mu $&
permeability&
1 $\to 4\pi \times 10^{-7}$ H/m \par $= 4\pi \times 10^{-7}$ Wb/(A$\cdot $m) \\
$\mu_{r}$&
relative permeability&
$\mu \to \mu_{r}$ \\
$w, W$&
energy density&
1 erg/cm$^{3} \to 10^{-1}$ J/m$^{3}$ \\
$N, D$&
demagnetizing factor&
1 $\to 1/(4\pi )$ \\
\hline
\multicolumn{3}{p{251pt}}{Vertical lines are optional in tables. Statements that serve as captions for
the entire table do not need footnote letters. }\\
\multicolumn{3}{p{251pt}}{$^{\mathrm{a}}$Gaussian units are the same as cg emu for magnetostatics; Mx
$=$ maxwell, G $=$ gauss, Oe $=$ oersted; Wb $=$ weber, V $=$ volt, s $=$
second, T $=$ tesla, m $=$ meter, A $=$ ampere, J $=$ joule, kg $=$
kilogram, H $=$ henry.}
\end{tabular}
\label{tab1}
\end{table}
\begin{figure}
\centerline{\includegraphics[width=3.5in]{fig1}}
\caption{Magnetization as a function of applied field. Note that ``Fig.''
is abbreviated. There is a period after the figure number, followed by two
spaces. It is good practice to explain the significance of the figure in the
caption.\label{fig1}}
\end{figure}
\subsection{MULTIPART FIGURES}
Figures compiled of more than one sub-figure presented side-by-side, or
stacked. If a multipart figure is made up of multiple figure types (one part
is lineart, and another is grayscale or color) the figure should meet the
stricter guidelines.
\subsection{FILE FORMATS FOR GRAPHICS}
Format and save your graphics using a suitable graphics processing program
that will allow you to create the images as PostScript (PS), Encapsulated
PostScript (.EPS), Tagged Image File Format (.TIFF), Portable Document
Format (.PDF), or Portable Network Graphics (.PNG) sizes them, and adjusts
the resolution settings. If you created your source files in one of the
following programs you will be able to submit the graphics without
converting to a PS, EPS, TIFF, PDF, or PNG file: Microsoft Word, Microsoft
PowerPoint, or Microsoft Excel. Though it is not required, it is strongly
recommended that these files be saved in PDF format rather than DOC, XLS, or
PPT. Doing so will protect your figures from common font and arrow stroke
issues that occur when working on the files across multiple platforms. When
submitting your final paper, your graphics should all be submitted
individually in one of these formats along with the manuscript.
\subsection{SIZING OF GRAPHICS}
Most charts, graphs, and tables are one column wide (3.5 inches / 88
millimeters / 21 picas) or page wide (7.16 inches / 181 millimeters / 43
picas). The maximum depth a graphic can be is 8.5 inches (216 millimeters /
54 picas). When choosing the depth of a graphic, please allow space for a
caption. Figures can be sized between column and page widths if the author
chooses, however it is recommended that figures are not sized less than
column width unless when necessary.
There is currently one publication with column measurements that do not
coincide with those listed above. Proceedings of the IEEE has a column
measurement of 3.25 inches (82.5 millimeters / 19.5 picas).
The final printed size of author photographs is exactly
1 inch wide by 1.25 inches tall (25.4 millimeters x 31.75 millimeters / 6
picas x 7.5 picas). Author photos printed in editorials measure 1.59 inches
wide by 2 inches tall (40 millimeters x 50 millimeters / 9.5 picas x 12
picas).
\subsection{RESOLUTION}
The proper resolution of your figures will depend on the type of figure it
is as defined in the ``Types of Figures'' section. Author photographs,
color, and grayscale figures should be at least 300dpi. Line art, including
tables should be a minimum of 600dpi.
\subsection{VECTOR ART}
In order to preserve the figures' integrity across multiple computer
platforms, we accept files in the following formats: .EPS/.PDF/.PS. All
fonts must be embedded or text converted to outlines in order to achieve the
best-quality results.
\subsection{COLOR SPACE}
The term color space refers to the entire sum of colors that can be
represented within the said medium. For our purposes, the three main color
spaces are Grayscale, RGB (red/green/blue) and CMYK
(cyan/magenta/yellow/black). RGB is generally used with on-screen graphics,
whereas CMYK is used for printing purposes.
All color figures should be generated in RGB or CMYK color space. Grayscale
images should be submitted in Grayscale color space. Line art may be
provided in grayscale OR bitmap colorspace. Note that ``bitmap colorspace''
and ``bitmap file format'' are not the same thing. When bitmap color space
is selected, .TIF/.TIFF/.PNG are the recommended file formats.
\subsection{ACCEPTED FONTS WITHIN FIGURES}
When preparing your graphics IEEE suggests that you use of one of the
following Open Type fonts: Times New Roman, Helvetica, Arial, Cambria, and
Symbol. If you are supplying EPS, PS, or PDF files all fonts must be
embedded. Some fonts may only be native to your operating system; without
the fonts embedded, parts of the graphic may be distorted or missing.
A safe option when finalizing your figures is to strip out the fonts before
you save the files, creating ``outline'' type. This converts fonts to
artwork what will appear uniformly on any screen.
\subsection{USING LABELS WITHIN FIGURES}
\subsubsection{Figure Axis Labels}
Figure axis labels are often a source of confusion. Use words rather than
symbols. As an example, write the quantity ``Magnetization,'' or
``Magnetization $M$,'' not just ``$M$.'' Put units in parentheses. Do not label
axes only with units. As in Fig. 1, for example, write ``Magnetization
(A/m)'' or ``Magnetization (A$\cdot $m$^{-1})$,'' not just ``A/m.'' Do not
label axes with a ratio of quantities and units. For example, write
``Temperature (K),'' not ``Temperature/K.''
Multipliers can be especially confusing. Write ``Magnetization (kA/m)'' or
``Magnetization (10$^{3}$ A/m).'' Do not write ``Magnetization (A/m)
\texttimes 1000'' because the reader would not know whether the top axis
label in Fig. 1 meant 16000 A/m or 0.016 A/m. Figure labels should be
legible, approximately 8 to 10 point type.
\subsubsection{Subfigure Labels in Multipart Figures and Tables}
Multipart figures should be combined and labeled before final submission.
Labels should appear centered below each subfigure in 8 point Times New
Roman font in the format of (a) (b) (c).
\subsection{FILE NAMING}
Figures (line artwork or photographs) should be named starting with the
first 5 letters of the author's last name. The next characters in the
filename should be the number that represents the sequential location of
this image in your article. For example, in author ``Anderson's'' paper, the
first three figures would be named ander1.tif, ander2.tif, and ander3.ps.
Tables should contain only the body of the table (not the caption) and
should be named similarly to figures, except that `.t' is inserted
in-between the author's name and the table number. For example, author
Anderson's first three tables would be named ander.t1.tif, ander.t2.ps,
ander.t3.eps.
Author photographs should be named using the first five characters of the
pictured author's last name. For example, four author photographs for a
paper may be named: oppen.ps, moshc.tif, chen.eps, and duran.pdf.
If two authors or more have the same last name, their first initial(s) can
be substituted for the fifth, fourth, third\textellipsis letters of their surname
until the degree where there is differentiation. For example, two authors
Michael and Monica Oppenheimer's photos would be named oppmi.tif, and
oppmo.eps.
\subsection{REFERENCING A FIGURE OR TABLE WITHIN YOUR PAPER}
When referencing your figures and tables within your paper, use the
abbreviation ``Fig.'' even at the beginning of a sentence. Do not abbreviate
``Table.'' Tables should be numbered with Roman Numerals.
\subsection{CHECKING YOUR FIGURES: THE IEEE GRAPHICS ANALYZER}
The IEEE Graphics Analyzer enables authors to pre-screen their graphics for
compliance with IEEE Open Journals standards before submission. The online
tool, located at \underline {http://graphicsqc.ieee.org/}, allows authors to
upload their graphics in order to check that each file is the correct file
format, resolution, size and colorspace; that no fonts are missing or
corrupt; that figures are not compiled in layers or have transparency, and
that they are named according to the IEEE Open Journals naming convention.
At the end of this automated process, authors are provided with a detailed
report on each graphic within the web applet, as well as by email.
For more information on using the Graphics Analyzer
or any other graphics related topic, contact the IEEE Graphics Help Desk by
e-mail at \underline {graphics@ieee.org}.
\subsection{SUBMITTING YOUR GRAPHICS}
Because IEEE will do the final formatting of your paper,
you do not need to position figures and tables at the top and bottom of each
column. In fact, all figures, figure captions, and tables can be placed at
the end of your paper. In addition to, or even in lieu of submitting figures
within your final manuscript, figures should be submitted individually,
separate from the manuscript in one of the file formats listed above in
section VI-J. Place figure captions below the figures; place table titles
above the tables. Please do not include captions as part of the figures, or
put them in ``text boxes'' linked to the figures. Also, do not place borders
around the outside of your figures.
\subsection{COLOR PROCESSING / PRINTING IN IEEE JOURNALS}
All IEEE Transactions, Journals, and Letters allow an author to publish
color figures on IEEE \textit{Xplore}{\textregistered} at no charge, and automatically
convert them to grayscale for print versions. In most journals, figures and
tables may alternatively be printed in color if an author chooses to do so.
Please note that this service comes at an extra expense to the author. If
you intend to have print color graphics, include a note with your final
paper indicating which figures or tables you would like to be handled that
way, and stating that you are willing to pay the additional fee.
\section{CONCLUSION}
A conclusion section is not required. Although a conclusion may review the
main points of the paper, do not replicate the abstract as the conclusion. A
conclusion might elaborate on the importance of the work or suggest
applications and extensions.
\section*{APPENDIX}
Appendixes, if needed, appear before the acknowledgment.
\section*{ACKNOWLEDGMENT}
The preferred spelling of the word ``acknowledgment'' in American English is
without an ``e'' after the ``g.'' Use the singular heading even if you have
many acknowledgments. Avoid expressions such as ``One of us (S.B.A.) would
like to thank \textellipsis .'' Instead, write ``F. A. Author thanks \textellipsis .'' In most
cases, sponsor and financial support acknowledgments are placed in the
unnumbered footnote on the first page, not here.
\section*{REFERENCES AND FOOTNOTES}
\subsection{REFERENCES}
References need not be cited in text. When they are, they appear on the
line, in square brackets, inside the punctuation. Multiple references are
each numbered with separate brackets. When citing a section in a book,
please give the relevant page numbers. In text, refer simply to the
reference number. Do not use ``Ref.'' or ``reference'' except at the
beginning of a sentence: ``Reference [3] shows \textellipsis .'' Please do not use
automatic endnotes in \textit{Word}, rather, type the reference list at the end of the
paper using the ``References'' style.
Reference numbers are set flush left and form a column of their own, hanging
out beyond the body of the reference. The reference numbers are on the line,
enclosed in square brackets. In all references, the given name of the author
or editor is abbreviated to the initial only and precedes the last name. Use
them all; use \textit{et al}. only if names are not given. Use commas around Jr., Sr., and
III in names. Abbreviate conference titles. When citing IEEE transactions,
provide the issue number, page range, volume number, year, and/or month if
available. When referencing a patent, provide the day and the month of
issue, or application. References may not include all information; please
obtain and include relevant information. Do not combine references. There
must be only one reference with each number. If there is a URL included with
the print reference, it can be included at the end of the reference.
Other than books, capitalize only the first word in a paper title, except
for proper nouns and element symbols. For papers published in translation
journals, please give the English citation first, followed by the original
foreign-language citation See the end of this document for formats and
examples of common references. For a complete discussion of references and
their formats, see the IEEE style manual at www.ieee.org/authortools.
\subsection{FOOTNOTES}
Number footnotes separately in superscripts (Insert\textbar
Footnote).\footnote{It is recommended that footnotes be avoided (except for
the unnumbered footnote with the receipt date on the first page). Instead,
try to integrate the footnote information into the text.} Place the actual
footnote at the bottom of the column in which it is cited; do not put
footnotes in the reference list (endnotes). Use letters for table footnotes
(see Table I).
\section{SUBMITTING YOUR PAPER FOR REVIEW}
\subsection{FINAL Stage}
When you submit your final version (after your paper has been accepted),
print it in two-column format, including figures and tables. You must also
send your final manuscript on a disk, via e-mail, or through a Web
manuscript submission system as directed by the society contact. You may use
\textit{Zip} for large files, or compress files using \textit{Compress, Pkzip, Stuffit,} or \textit{Gzip.}
Also, send a sheet of paper or PDF with complete contact information for all
authors. Include full mailing addresses, telephone numbers, fax numbers, and
e-mail addresses. This information will be used to send each author a
complimentary copy of the journal in which the paper appears. In addition,
designate one author as the ``corresponding author.'' This is the author to
whom proofs of the paper will be sent. Proofs are sent to the corresponding
author only.
\subsection{REVIEW STAGE USING SCHOLARONE{\textregistered} MANUSCRIPTS}
Contributions to the Transactions, Journals, and Letters may be submitted
electronically on IEEE's on-line manuscript submission and peer-review
system, ScholarOne{\textregistered} Manuscripts. You can get a
listing of the publications that participate in ScholarOne at
http://www.ieee.org/\discretionary{}{}{}publications\textunderscore
standards/publications/authors/authors\textunderscore\break submission.html First
check if you have an existing account. If there is none, please create a new
account. After logging in, go to your Author Center and click ``Submit First
Draft of a New Manuscript.''
Along with other information, you will be asked to select the subject from a
pull-down list. Depending on the journal, there are various steps to the
submission process; you must complete all steps for a complete submission.
At the end of each step you must click ``Save and Continue''; just uploading
the paper is not sufficient. After the last step, you should see a
confirmation that the submission is complete. You should also receive an
e-mail confirmation. For inquiries regarding the submission of your paper on
ScholarOne Manuscripts, please contact oprs-support@ieee.org or call +1
732 465 5861.
ScholarOne Manuscripts will accept files for review in various formats.
Please check the guidelines of the specific journal for which you plan to
submit.
You will be asked to file an electronic copyright form immediately upon
completing the submission process (authors are responsible for obtaining any
security clearances). Failure to submit the electronic copyright could
result in publishing delays later. You will also have the opportunity to
designate your article as ``open access'' if you agree to pay the IEEE open
access fee.
\subsection{FINAL STAGE USING SCHOLARONE MANUSCRIPTS}
Upon acceptance, you will receive an email with specific instructions
regarding the submission of your final files. To avoid any delays in
publication, please be sure to follow these instructions. Most journals
require that final submissions be uploaded through ScholarOne Manuscripts,
although some may still accept final submissions via email. Final
submissions should include source files of your accepted manuscript, high
quality graphic files, and a formatted pdf file. If you have any questions
regarding the final submission process, please contact the administrative
contact for the journal.
In addition to this, upload a file with complete contact information for all
authors. Include full mailing addresses, telephone numbers, fax numbers, and
e-mail addresses. Designate the author who submitted the manuscript on
ScholarOne Manuscripts as the ``corresponding author.'' This is the only
author to whom proofs of the paper will be sent.
\subsection{COPYRIGHT FORM}
Authors must submit an electronic IEEE Copyright Form (eCF) upon submitting
their final manuscript files. You can access the eCF system through your
manuscript submission system or through the Author Gateway. You are
responsible for obtaining any necessary approvals and/or security
clearances. For additional information on intellectual property rights,
visit the IEEE Intellectual Property Rights department web page at
http://www.ieee.org/publications\textunderscore\discretionary{}{}{}standards/publications/rights/index.html.
\section{IEEE PUBLISHING POLICY}
The general IEEE policy requires that authors should only submit original
work that has neither appeared elsewhere for publication, nor is under
review for another refereed publication. The submitting author must disclose
all prior publication(s) and current submissions when submitting a
manuscript. Do not publish ``preliminary'' data or results. The submitting
author is responsible for obtaining agreement of all coauthors and any
consent required from employers or sponsors before submitting an article.
The IEEE Open Journals Department strongly discourages courtesy authorship;
it is the obligation of the authors to cite only relevant prior work.
The IEEE Open Journals Department does not publish conference records or
proceedings, but can publish articles related to conferences that have
undergone rigorous peer review. Minimally, two reviews are required for
every article submitted for peer review.
\section{PUBLICATION PRINCIPLES}
The two types of contents of that are published are; 1) peer-reviewed and 2)
archival. The Transactions and Journals Department publishes scholarly
articles of archival value as well as tutorial expositions and critical
reviews of classical subjects and topics of current interest.
Authors should consider the following points:
\begin{enumerate}
\item Technical papers submitted for publication must advance the state of knowledge and must cite relevant prior work.
\item The length of a submitted paper should be commensurate with the importance, or appropriate to the complexity, of the work. For example, an obvious extension of previously published work might not be appropriate for publication or might be adequately treated in just a few pages.
\item Authors must convince both peer reviewers and the editors of the scientific and technical merit of a paper; the standards of proof are higher when extraordinary or unexpected results are reported.
\item Because replication is required for scientific progress, papers submitted for publication must provide sufficient information to allow readers to perform similar experiments or calculations and use the reported results. Although not everything need be disclosed, a paper must contain new, useable, and fully described information. For example, a specimen's chemical composition need not be reported if the main purpose of a paper is to introduce a new measurement technique. Authors should expect to be challenged by reviewers if the results are not supported by adequate data and critical details.
\item Papers that describe ongoing work or announce the latest technical achievement, which are suitable for presentation at a professional conference, may not be appropriate for publication.
\end{enumerate}
\section*{REFERENCES}
\def\refname{\vadjust{\vspace*{-1em}}} %Please don't do this in a real paper.
\subsubsection*{Basic format for books:}
\begin{thebibliography}{00}
\bibitem{b1} J. K. Author, ``Title of chapter in the book,'' in \textit{Title of His Published Book, x}th ed. City of Publisher,
(only U.S. State), Country: Abbrev. of Publisher, year, ch. x, sec. x, pp.
\textit{xxx--xxx.}
\end{thebibliography}
\subsubsection*{Examples:}
\begin{thebibliography}{00}
\bibitem{b2} G. O. Young, ``Synthetic structure of industrial
plastics,'' in \emph{Plastics}, 2nd ed., vol. 3, J. Peters, Ed. New York, NY, USA: McGraw-Hill, 1964, pp. 15--64.
\bibitem{b3} W.-K. Chen, \emph{Linear Networks and Systems}. Belmont, CA, USA: Wadsworth, 1993, pp. 123--135.
\end{thebibliography}
\subsubsection*{Basic format for periodicals:}
\begin{thebibliography}{00}
\bibitem{b4} J. K. Author, ``Name of paper,'' \textit{Abbrev. Title of Periodical}, vol. x, no. x, pp. xxx-xxx, Abbrev. Month, year, DOI.
10.1109.\textit{XXX}.123456.
\end{thebibliography}
\subsubsection*{Examples:}
\begin{thebibliography}{00}
\bibitem{b5} J. U. Duncombe, ``Infrared navigation---Part I: An
assessment of feasibility,'' \emph{IEEE Trans. Electron Devices}, vol. ED-11, no. 1, pp. 34--39, Jan. 1959, 10.1109/TED.2016.2628402.
\bibitem{b6} E. P. Wigner, ``Theory of traveling-wave optical laser,''
\emph{Phys. Rev.}, vol. 134, pp. A635--A646, Dec. 1965.
\bibitem{b7} E. H. Miller, ``A note on reflector arrays,'' \emph{IEEE
Trans. Antennas Propagat.}, to be published.
\bibitem{b8} H. Qin, Y. Cui, Z. Wu, Q. Chen and D. Xing, "Real-Time
Thermoacoustic Imaging-Guidance for Breast Tumor Resection," \emph{IEEE Photonics Journal}, vol. 12, no. 3, pp. 1--7, June 2020, Art no. 3700207.
\end{thebibliography}
\subsubsection*{Basic format for reports:}
\begin{thebibliography}{00}
\bibitem{b9} J. K. Author, ``Title of report,'' Abbrev. Name of Co., City of Co., Abbrev.
State, Country, Rep. {xxx}, year.
\end{thebibliography}
\subsubsection*{Examples:}
\begin{thebibliography}{00}
\bibitem{b10} E. E. Reber, R. L. Michell, and C. J. Carter, ``Oxygen absorption in the earth's atmosphere,'' Aerospace Corp., Los Angeles, CA, USA, Tech. Rep. TR-0200 (4230-46)-3, Nov. 1988.
\bibitem{b11} J. H. Davis and J. R. Cogdell, ``Calibration program for the 16-foot antenna,'' Elect. Eng. Res. Lab., Univ. Texas, Austin, TX, USA, Tech. Memo. NGL-006-69-3, Nov. 15, 1987.
\end{thebibliography}
\subsubsection*{Basic format for handbooks:}
\begin{thebibliography}{00}
\bibitem{b12} \textit{Name of Manual/Handbook}, x ed., Abbrev. Name of Co., City of Co., Abbrev. State, Country, year, pp.
\textit{xxx-xxx.}
\end{thebibliography}
\subsubsection*{Examples:}
\begin{thebibliography}{00}
\bibitem{b13} \textit{Transmission Systems for Communications}, 3rd ed., Western Electric Co., Winston-Salem, NC, USA, 1985, pp. 44--60.
\bibitem{b14} \textit{Motorola Semiconductor Data Manual}, Motorola Semiconductor Products Inc., Phoenix, AZ, USA, 1989.
\end{thebibliography}
\subsubsection*{Basic format for books (when available online): }
\begin{thebibliography}{00}
\bibitem{b15} J. K. Author, ``Title of chapter in the book,'' in \textit{Title of Published Book}, xth ed. City of
Publisher, State, Country: Abbrev. of Publisher, year, ch. x, sec. x, pp.
\textit{xxx--xxx}. [Online]. Available: \underline {http://www.web.com}. Accessed on: Month
Day, Year.
\end{thebibliography}
\subsubsection*{Examples:}
\begin{thebibliography}{00}
\bibitem{b16} G. O. Young, ``Synthetic structure of industrial
plastics,'' in \emph{Plastics}, vol. 3, Polymers of Hexadromicon, J.
Peters, Ed., 2nd ed. New York, NY, USA: McGraw-Hill, 1964, pp. 15--64.
[Online]. Available: \underline{http://www.bookref.com}. Accessed on: April 25, 2020.
\bibitem{b17} \textit{The Founders' Constitution}, Philip B. Kurland and Ralph Lerner, eds., Chicago, IL, USA: Univ. Chicago Press, 1987. [Online]. Available: \underline {http://press-pubs.uchicago.edu/founders/}. Accessed on: April 25, 2020.
\bibitem{b18} \emph{The Terahertz Wave eBook}. ZOmega Terahertz
Corp., 2014. [Online]. Available: \underline{http://dl.z-thz.com/eBook/zomega\_ebook\_pdf\_1206\_sr.pdf}. Accessed on: May 19, 2014.
\bibitem{b19} Philip B. Kurland and Ralph Lerner, eds., \textit{The
Founders' Constitution. }Chicago, IL, USA: Univ. of Chicago Press, 1987, [Online] Available: \emph{http://press-pubs.uchicago.edu/founders/}. Accessed on: Feb. 28, 2010.
\end{thebibliography}
\subsubsection*{Basic format for conference proceedings (published):}
\begin{thebibliography}{00}
\bibitem{b20} J. K. Author, ``Title of paper,'' in \textit{Abbreviated Name of Conf.}, City of Conf., Abbrev. State (if
given), Country, year, pp. \textit{xxxxxx.}
\end{thebibliography}
\subsubsection*{Example:}
\begin{thebibliography}{00}
\bibitem{b21} D. B. Payne and J. R. Stern, ``Wavelength-switched
passively coupled single-mode optical network,'' in \textit{Proc. IOOC-ECOC, }Boston, MA, USA, 1985,~pp.~585--590.
\end{thebibliography}
\subsubsection*{Basic format for papers presented at conferences when available online: }
\begin{thebibliography}{00}
\bibitem{b22} J.K. Author. (year, month). Title. presented at abbrev. conference title.
[Type of Medium]. Available: \underline{site/path/file}. Accessed on: Month Day, Year.
\end{thebibliography}
\subsubsection*{Example:}
\begin{thebibliography}{00}
\bibitem{b23} PROCESS Corporation, Boston, MA, USA. Intranets: Internet technologies deployed behind the firewall for corporate productivity. Presented at INET96 Annual Meeting. [Online]. Available: \underline {http://home.process.com/Intranets/wp2.htp}. Accessed on: April 25, 2020.
\end{thebibliography}
\subsubsection*{Basic format for reports and handbooks (when available online): }
\begin{thebibliography}{00}
\bibitem{b24} J. K. Author. ``Title of report,'' Company. City, State, Country. Rep. no.,
(optional: vol./issue), Date. [Online] Available:
\underline{site/path/file}. Accessed
on: Month Day, Year.
\end{thebibliography}
\subsubsection*{Examples:}
\begin{thebibliography}{00}
\bibitem{b25} R. J. Hijmans and J. van Etten, ``Raster: Geographic analysis and modeling with raster data,'' R Package Version 2.0-12, Jan. 12, 2012. [Online]. Available: \underline {http://CRAN.R-project.org/package=raster}. Accessed on: April 25, 2020.
\bibitem{b26} Teralyzer. Lytera UG, Kirchhain, Germany [Online]. Available: \emph{http://www.lytera.de/Terahertz\_THz\_Spectroscopy.php?id=home}, Accessed on: Jun. 5, 2014
\end{thebibliography}
\subsubsection*{Basic format for computer programs and electronic documents (when available online): }
\begin{thebibliography}{00}
\bibitem{b27} Legislative body. Number of Congress, Session. (year, month day). \textit{Number of bill or resolution}, \textit{Title}. [Type
of medium]. Available: \underline{site/path/file}
\end{thebibliography}
{\bfseries\itshape NOTE:} ISO recommends that capitalization follow the
accepted practice for the language or script in which the information is
given.
\subsubsection*{Example:}
\begin{thebibliography}{00}
\bibitem{b28} U.S. House. 102nd Congress, 1st Session. (1991, Jan. 11). \textit{H. Con. Res. 1, Sense of the Congress on Approval of Military Action}. [Online]. Available: LEXIS Library: GENFED File: BILLS
\end{thebibliography}
\subsubsection*{Basic format for patents (when available online):}
\begin{thebibliography}{00}
\bibitem{b29} Name of the invention, by inventor's name. (year, month day). Patent Number [Type
of medium]. Available: \underline{site/path/file}
\end{thebibliography}
\subsubsection*{Example:}
\begin{thebibliography}{00}
\bibitem{b30} Musical toothbrush with mirror, by L.M.R. Brooks. (1992, May 19). Patent D 326 189 [Online]. Available: NEXIS Library: LEXPAT File: DES
\end{thebibliography}
\subsubsection*{Example for papers presented at conferences (unpublished):}
\begin{thebibliography}{00}
\bibitem{b31} D. Ebehard and E. Voges, ``Digital single sideband
detection for interferometric sensors,'' presented at the \textit{2nd Int. Conf. Optical Fiber Sensors,} Stuttgart, Germany, Jan. 2--5, 1984.
\end{thebibliography}
\subsubsection*{Basic format for patents:}
\begin{thebibliography}{00}
\bibitem{b32} J. K. Author, ``Title of patent,'' U.S. Patent {x xxx xxx}, Abbrev. Month, day, year.
\end{thebibliography}
\subsubsection*{Example:}
\begin{thebibliography}{00}
\bibitem{b33} G. Brandli and M. Dick, ``Alternating current fed power supply,'' U.S. Patent 4 084 217, Nov. 4, 1978.
\end{thebibliography}
\subsubsection*{Basic format for theses (M.S.) and dissertations (Ph.D.):}
\begin{thebibliography}{00}
\bibitem{b34} J. K. Author, ``Title of thesis,'' M.S. thesis, Abbrev. Dept., Abbrev.
Univ., City of Univ., Abbrev. State, year. p. nnn.
\bibitem{b35} J. K. Author, ``Title of dissertation,'' Ph.D. dissertation, Abbrev.
Dept., Abbrev. Univ., City of Univ., Abbrev. State, year. p. nnn.
\end{thebibliography}
\subsubsection*{Examples:}
\begin{thebibliography}{00}
\bibitem{b36} J. O. Williams, ``Narrow-band analyzer,'' Ph.D. dissertation, Dept. Elect. Eng., Harvard Univ., Cambridge, MA, USA, 1993. p. 50.
\bibitem{b37} N. Kawasaki, ``Parametric study of thermal and chemical nonequilibrium nozzle flow,'' M.S. thesis, Dept. Electron. Eng., Osaka Univ., Osaka, Japan, 1993. p. 30.
\end{thebibliography}
\subsubsection*{Basic format for the most common types of unpublished references:}
\begin{thebibliography}{00}
\bibitem{b38} J. K. Author, private communication, Abbrev. Month, year.
\bibitem{b39} J. K. Author, ``Title of paper,'' unpublished.
\bibitem{b40} J. K. Author, ``Title of paper,'' to be published.
\end{thebibliography}
\subsubsection*{Examples:}
\begin{thebibliography}{00}
\bibitem{b41} A. Harrison, private communication, May 1995.
\bibitem{b42} B. Smith, ``An approach to graphs of linear forms,'' unpublished.
\bibitem{b43} A. Brahms, ``Representation error for real numbers in binary computer arithmetic,'' IEEE Computer Group Repository, Paper R-67-85.
\end{thebibliography}
\subsubsection*{Basic formats for standards:}
\begin{thebibliography}{00}
\bibitem{b44} \textit{Title of Standard}, Standard number, date.
\bibitem{b45} \textit{Title of Standard}, Standard number, Corporate author, location, date.
\end{thebibliography}
\subsubsection*{Examples:}
\begin{thebibliography}{00}
\bibitem{b46} \emph{IEEE Criteria for Class IE Electric Systems}, IEEE Standard 308, 1969.
\bibitem{b47} \emph{Letter Symbols for Quantities}, ANSI Standard Y10.5-1968.
\end{thebibliography}
\subsubsection*{Article number in~reference examples:}
\begin{thebibliography}{00}
\bibitem{b48} R. Fardel, M. Nagel, F. Nuesch, T. Lippert, and A. Wokaun, ``Fabrication of organic light emitting diode pixels by laser-assisted forward transfer,'' \textit{Appl. Phys. Lett.}, vol. 91, no. 6, Aug. 2007, Art. no. 061103.
\bibitem{b49} J. Zhang and N. Tansu, ``Optical gain and laser characteristics of InGaN quantum wells on ternary InGaN substrates,'' \textit{IEEE Photon. J.}, vol. 5, no. 2, Apr. 2013, Art. no. 2600111
\end{thebibliography}
\subsubsection*{Example when using et al.:}
\begin{thebibliography}{00}
\bibitem{b50} S. Azodolmolky, Jordi Perell\'{o}, Marianna Angelou, Fernando Agraz, Luis Velasco, Salvatore Spadaro,~\textit{et al.}, Experimental demonstration of an impairment aware network planning and operation tool for transparent/translucent optical networks,''~\textit{J. Lightwave. Technol.}, vol. 29, no. 4, pp. 439--448, Sep. 2011.
\end{thebibliography}
\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{a1.png}}]{FIRST
A. AUTHOR } (Fellow, IEEE) and all authors may include
biographies. Biographies are often not included in conference-related
papers. This author became a Member (M) of IEEE in 1976, a Senior
Member (SM) in 1981, and a Fellow (F) in 1987. The first paragraph may
contain a place and/or date of birth (list place, then date). Next,
the author's educational background is listed. The degrees should be
listed with type of degree in what field, which institution, city,
state, and country, and year the degree was earned. The author's major
field of study should be lower-cased.
The second paragraph uses the pronoun of the person (he or she) and not the
author's last name. It lists military and work experience, including summer
and fellowship jobs. Job titles are capitalized. The current job must have a
location; previous positions may be listed
without one. Information concerning previous publications may be included.
Try not to list more than three books or published articles. The format for
listing publishers of a book within the biography is: title of book
(publisher name, year) similar to a reference. Current and previous research
interests end the paragraph. The third paragraph begins with the author's
title and last name (e.g., Dr.\ Smith, Prof.\ Jones, Mr.\ Kajor, Ms.\ Hunter).
List any memberships in professional societies other than the IEEE. Finally,
list any awards and work for IEEE committees and publications. If a
photograph is provided, it should be of good quality, and
professional-looking. Following are two examples of an author's biography.
\end{IEEEbiography}
\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{a2.png}}]{SECOND
B. AUTHOR } was born in Greenwich Village, New York, NY, USA in
1977. He received the B.S. and M.S. degrees in aerospace engineering from
the University of Virginia, Charlottesville, in 2001 and the Ph.D. degree in
mechanical engineering from Drexel University, Philadelphia, PA, in 2008.
From 2001 to 2004, he was a Research Assistant with the Princeton Plasma
Physics Laboratory. Since 2009, he has been an Assistant Professor with the
Mechanical Engineering Department, Texas A{\&}M University, College Station.
He is the author of three books, more than 150 articles, and more than 70
inventions. His research interests include high-pressure and high-density
nonthermal plasma discharge processes and applications, microscale plasma
discharges, discharges in liquids, spectroscopic diagnostics, plasma
propulsion, and innovation plasma applications. He is an Associate Editor of
the journal \emph{Earth, Moon, Planets}, and holds two patents.
Dr. Author was a recipient of the International Association of Geomagnetism
and Aeronomy Young Scientist Award for Excellence in 2008, and the IEEE
Electromagnetic Compatibility Society Best Symposium Paper Award in 2011.
\end{IEEEbiography}
\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{a3.png}}]{THIRD
C. AUTHOR,~JR. } (Member, IEEE) received the B.S. degree in mechanical
engineering from National Chung Cheng University, Chiayi, Taiwan, in 2004
and the M.S. degree in mechanical engineering from National Tsing Hua
University, Hsinchu, Taiwan, in 2006. He is currently pursuing the Ph.D.
degree in mechanical engineering at Texas A{\&}M University, College
Station, TX, USA.
From 2008 to 2009, he was a Research Assistant with the Institute of
Physics, Academia Sinica, Tapei, Taiwan. His research interest includes the
development of surface processing and biological/medical treatment
techniques using nonthermal atmospheric pressure plasmas, fundamental study
of plasma sources, and fabrication of micro- or nanostructured surfaces.
Mr. Author's awards and honors include the Frew Fellowship (Australian
Academy of Science), the I. I. Rabi Prize (APS), the European Frequency and
Time Forum Award, the Carl Zeiss Research Award, the William F. Meggers
Award and the Adolph Lomb Medal (OSA).
\end{IEEEbiography}
\end{document}

5018
OJ_Template/ieeeoj.cls Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 89 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

BIN
OJ_Template/ojim.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB