[00:00.900 --> 00:05.580] Yesterday, our teams collectively worked their way through Challenges 0 through 2, [00:05.580 --> 00:08.660] leaving with half of the challenges solved by at least one team, [00:08.660 --> 00:11.380] and three challenges remaining to be solved today. [00:11.920 --> 00:15.160] PFS grew their lead throughout the day yesterday, [00:15.160 --> 00:18.060] but the biggest drama occurred after hours. [00:18.060 --> 00:22.000] When the 4 p.m. Pacific deadline for the On Orbit Challenge passed, [00:22.000 --> 00:25.780] only four teams had submitted solutions deemed acceptable. [00:25.780 --> 00:27.620] What's an acceptable solution? [00:28.860 --> 00:31.760] Let's take a look at solving the On Orbit Challenge. [00:31.940 --> 00:34.380] First, some terms you'll want to know. [00:34.640 --> 00:36.860] Two-line element set, or TLE. [00:37.000 --> 00:42.620] A data format containing information about an object's position and velocity at a specific point in time. [00:42.620 --> 00:45.880] It is used to calculate where a satellite will be at some point in the future, [00:45.880 --> 00:48.740] with increasing uncertainty the further out in time. [00:48.740 --> 00:50.400] Window of opportunity. [00:50.560 --> 00:55.260] The period of time during which the satellite can be positioned to complete the desired goal. [00:55.260 --> 01:00.000] Vector. A line indicating a specific direction in magnitude. [01:00.160 --> 01:07.260] A satellite will have assigned X, Y, and Z vectors associated with the body of the vehicle that can be used in a coordinate system. [01:07.260 --> 01:14.420] Camera boresight, camera mounting position, and camera body vector all describe the satellite camera and where it's pointed. [01:14.520 --> 01:19.180] Quaternion. A number system that is handy for calculating 3D rotations. [01:19.640 --> 01:21.660] Got it? Here we go. [01:21.660 --> 01:26.040] The first step in solving the on-orbit challenge. Identify the key data. [01:26.080 --> 01:34.100] The TLE, camera mounting position, target, and window of opportunity are all supplied in the challenge description or the on-orbit handbook. [01:34.260 --> 01:39.380] The data is used to calculate the orbit of both the satellite and the moon toward the window of opportunity. [01:39.380 --> 01:43.340] And don't forget to grab the camera body vector, which will be needed later. [01:43.580 --> 01:49.020] The second step. Calculate the time of image by defining the relationship between these key vectors. [01:49.020 --> 01:54.800] 1. Determine the satellite-to-moon vector, which points directly from the satellite towards the moon. [01:54.800 --> 02:00.060] 2. Determine the nadir vector, which points directly from the satellite towards the center of the Earth. [02:00.060 --> 02:10.200] 3. Determine the angle between 1. the satellite-to-moon vector and the nadir vector and 2. the angle between the satellite negative Z vector and the camera body vector. [02:10.200 --> 02:15.220] The instance when the difference between the two angles is minimized gives us the time of image, [02:15.220 --> 02:20.900] the moment along its orbit when the satellite will be in position to take our all-important moonshot. [02:21.840 --> 02:29.440] The third step. Calculate the attitude or the position within its orbit that the satellite must take for the camera to capture the image. [02:29.540 --> 02:32.760] This is accomplished by lots of math. [02:33.140 --> 02:38.600] Specifically, something called a direction cosine matrix, DCM, or rotation matrix. [02:38.600 --> 02:47.300] The DCM calculates a satellite attitude that points 1. the camera boresight to the moon and 2. the satellite's negative Z vector to Earth's center, [02:47.300 --> 02:50.440] which is the attitude needed to accomplish the goal. [02:50.940 --> 02:59.600] The DCM supplies us with a specific quaternion which, when uploaded and applied to the satellite's attitude determination and control system, ADCS, [02:59.600 --> 03:02.540] moves the satellite into the desired position. [03:02.540 --> 03:08.240] On to the final step. Apply all that information and get the image we're after. [03:08.780 --> 03:18.320] We take the time of image and back out the commands around it, giving the satellite enough time to apply the quaternion and be in position when it arrives at the window of opportunity. [03:18.340 --> 03:20.840] The proper order of commands would be as follows. [03:20.840 --> 03:31.460] Turn on the ADCS, slew to the commanded quaternion, turn the camera on, set the exposure time, capture the image, and finally, turn the camera off. [03:31.460 --> 03:34.160] That's it. Challenge accomplished. [03:34.700 --> 03:39.320] But what does all of this have to do with hacking and keeping our satellites secure? [03:39.400 --> 03:42.740] The on-orbit challenge was completed with full trust. [03:42.740 --> 03:47.480] Our satellites rely on data and sensors from multiple sources in order to complete an objective. [03:47.480 --> 03:51.480] The TLE that was provided relied on data from the satellite and ground stations. [03:51.480 --> 03:55.620] Authenticated communications were required to upload the proper command sequence. [03:55.620 --> 04:01.040] Trusted execution was required to process sensor and actuator data to close control loops. [04:01.040 --> 04:05.360] Secure onboard communications were required to carry out operations in orbit. [04:05.560 --> 04:14.460] We need security-focused people to help with these problems because just as much as it takes a team of people to strap explosives to a computer to get a satellite into orbit, [04:14.460 --> 04:22.500] it takes a team of people from both space and security communities to ensure that space remains a viable, usable resource. [04:24.640 --> 04:29.360] The four teams with successful on-orbit solutions during the time period were [04:29.900 --> 04:34.620] Poland Cannon to Space. In fact, theirs came well over an hour before anyone else's. [04:34.700 --> 04:46.280] ADD Vulcan, Flux Rocket Repeat, and Samurai all came in within about 10 minutes of each other within the last 15 minutes of that window. [04:46.600 --> 04:52.480] Remember, the on-orbit portion involves a team computing a mission plan for an actual satellite to take a picture of a moon. [04:52.480 --> 05:02.460] All acceptable solutions were evaluated and the most accurate solution submitted before the 4 p.m. deadline will be chosen to be sent into space into our orbiting satellite. [05:02.520 --> 05:06.730] We'll learn whose solution that was amongst those four later on today. [05:07.060 --> 05:14.980] As we entered into our overtime period after the 4 p.m. deadline yesterday, the alternate acceptance criteria kicked into play. [05:14.980 --> 05:25.100] While the four teams submitting before 4 p.m. were automatically eligible for their solution to be sent and automatically into prize eligibility, we had to get more teams available. [05:25.100 --> 05:32.620] The limit was six. This meant that two teams of the remaining four would be out of contention for the final prize pool. [05:32.880 --> 05:41.280] The four teams fighting for those two spots included PFS, 1553, 1064 Seabred, and Solarwine. [05:41.280 --> 05:48.480] 1553 managed to submit a solution that was valid only three minutes after the deadline, quickly grabbing that fifth spot. [05:48.560 --> 05:54.680] That left PFS, 1064 Seabred, and Solarwine on the ropes for that last spot. [05:54.760 --> 06:04.540] PFS and 1064 Seabred were number one and number four on the scoreboard at that point, so no matter what happened, someone in contention for the podium would not be eligible. [06:04.540 --> 06:10.080] All of the contest organizers were on a shared video chat, waiting to see the results as they came in. [06:10.080 --> 06:18.400] 1064 Seabred had what looked to be an extremely close solution that was just outside the acceptance criteria, and PFS didn't seem to be close. [06:18.400 --> 06:31.020] Then, at 7.48 p.m. Eastern, or 4.48 p.m. Pacific, PFS came in with a valid solution, just edging out 1064 Seabred and Solarwine on the list of on-orbit acceptance. [06:33.400 --> 06:39.280] Unfortunately, that means that 1064 Seabred and Solarwine are both ineligible for a spot on the podium. [06:39.280 --> 06:42.380] That said, they can still have an impact on the game. [06:42.440 --> 06:49.760] Either team scoring first blood will potentially change the number of available points left on the board for their competitors and impact the final result. [06:49.800 --> 06:58.720] It's sad to see two great teams out of contention for the prize pool, but they can still end up on the leaderboard from a points perspective and attain the associated bragging rights. [06:58.720 --> 07:03.400] In fact, let's go ahead and take a look at the scoreboard now in our live octagon feed. [07:04.340 --> 07:06.300] And they definitely haven't slowed down. [07:06.300 --> 07:10.600] You'll notice that Solarwine actually scored first blood on Challenge 3. [07:10.620 --> 07:13.560] Congratulations to them for the great work overnight. [07:13.700 --> 07:20.620] The pressure is now on the remaining teams to show that they made good use of the downtime as well to land Challenge 3. [07:20.620 --> 07:27.480] You can also see Flux Repeat Rocket scoring just before this broadcast with only a 5% reduction in total points. [07:27.480 --> 07:29.440] So that's a good amount of points for them. [07:29.760 --> 07:34.580] That means Solarwine and Flux Repeat Rocket are both moving on to Challenge 4. [08:00.330 --> 08:05.010] This is the first time we've seen Flux Repeat Rocket make a big move on the scoreboard. [08:05.010 --> 08:06.570] Let's check out their team bio. [08:36.200 --> 08:43.560] Like many of the combined CTF teams that we've seen here today, I have good memories of playing Hack Lou CTF. [08:43.560 --> 08:48.660] In fact, it's often the case that the competition participants are also organizers in other times. [08:48.660 --> 08:57.960] So one of those teams that makes up the composition of Flux Repeat Rocket, Flux Fingers, runs Hack Lou, which is another great CTF competition you should check out. [08:58.060 --> 08:59.720] What an exciting first day. [08:59.720 --> 09:04.420] I'm looking forward to seeing what happens today as our teams battle through these last few challenges. [09:04.420 --> 09:10.600] Come back and join us at our 10.50am Pacific, 1.50pm Eastern for our next competition update.